/*
 *     Generated by class-dump 3.1.
 *
 *     class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2005 by Steve Nygard.
 */

struct CGSize {
    float _field1;
    float _field2;
};

struct ComponentInstanceRecord {
    long _field1[1];
};

struct MVAlertStateImageNames {
    id _field1;
    id _field2;
    id _field3;
    id _field4;
    id _field5;
    id _field6;
    id _field7;
    id _field8;
};

struct MailAlertInfo {
    id _field1;
    id _field2;
    id _field3;
    id _field4;
    int _field5;
};

struct MailPasswordInfo {
    id _field1;
    id _field2;
    char *_field3;
    id _field4;
};

struct MailSegmentedCellMetrics {
    float _field1;
    float _field2;
    float _field3;
    float _field4;
    float _field5;
    float _field6;
    float _field7;
    float _field8;
    float _field9;
    float _field10;
};

struct OpaqueSecCertificateRef;

struct PointerDataRefRecord;

struct SheetContext {
    id _field1;
    id _field2;
    id _field3;
    id _field4;
    char _field5;
};

struct UserDataRecord;

struct _CGDirectDisplayID;

struct _MessageSortingInformation {
    char _field1;
    char _field2;
    id _field3;
};

struct _NSHashTable;

struct _NSMapTable;

struct _NSPoint {
    float x;
    float y;
};

struct _NSRange {
    unsigned int location;
    unsigned int length;
};

struct _NSRect {
    struct _NSPoint origin;
    struct _NSSize size;
};

struct _NSSize {
    float width;
    float height;
};

struct _NSZone;

struct _QuotaSimpleSortDescriptor {
    void *comparator;
    char ascending;
};

struct __CFDictionary;

struct __CFNetDiagnostic;

struct __CFSet;

struct __CFURL;

struct visible_state {
    char hadSelection;
    char selectionWasVisible;
    char scrollerWasAtEnd;
    char forceSelToVisible;
    NSString *msgIDToPin;
    float msgUpperLeft;
};

typedef struct {
    int _field1;
    char _field2;
    float _field3;
    float _field4;
    float _field5;
    float _field6;
    char _field7;
    char _field8;
} CDAnonymousStruct2;

typedef struct {
    int _field1;
    float _field2;
} CDAnonymousStruct1;

/*
 * File: Mail
 * Arch: Intel 80x86 (i386)
 */

@protocol DOMNodeFilter <NSObject>
- (short)acceptNode:(id)fp8;
@end

@protocol MFUserAgent
- (id)queryUserForPasswordWithMessage:(id)fp8 title:(id)fp12 remember:(char *)fp16;
- (BOOL)showCertificateTrustPanelForError:(id)fp8 certificates:(id)fp12;
- (int)informUserOfError:(id)fp8;
- (BOOL)queryUserForYesNoWithMessage:(id)fp8 title:(id)fp12 yesTitle:(id)fp16 noTitle:(id)fp20;
- (int)runAlertPanelWithTitle:(id)fp8 defaultTitle:(id)fp12 alternateTitle:(id)fp16 otherTitle:(id)fp20 message:(id)fp24;
- (void)runNonModalAlertPanelForObject:(id)fp8 withError:(id)fp12;
- (void)dismissNonModalAlertPanelForObject:(id)fp8;
- (void)queryUserForBigMessageAction:(id)fp8 userResponse:(int *)fp12;
- (BOOL)queryUserIfNeededToCreateMailbox:(id)fp8 orChooseNewMailbox:(id *)fp12;
- (id)queryUserToSelectMailbox:(id)fp8;
- (void)storeBeingInvalidated:(id)fp8;
- (BOOL)shouldInvalidateMailbox:(id)fp8;
- (BOOL)isTerminating;
- (BOOL)wakingFromSleep;
- (BOOL)personWithEmailIsOnline:(id)fp8;
- (BOOL)openTemporaryAttachments:(id)fp8 applicationBundle:(id)fp12;
@end

@protocol MVMailboxSelectionOwner
- (id)selectedMailboxes;
- (id)selectedMailbox;
- (void)selectPathsToMailboxes:(id)fp8;
- (BOOL)mailboxIsExpanded:(id)fp8;
- (void)revealMailbox:(id)fp8;
- (id)mailboxSelectionWindow;
@end

@protocol MVSelectionOwner
- (id)selection;
- (void)selectMessages:(id)fp8;
- (id)currentDisplayedMessage;
- (id)messageStore;
- (BOOL)transferSelectionToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12;
@end

@protocol MessageBrowserController <NSObject, MVSelectionOwner>
- (id)messageBrowserView;
- (BOOL)isSelectionVisible;
- (void)showSelectionAndCenter:(BOOL)fp8;
- (void)updateTextViewerToSelection;
- (id)messagesToTransfer;
- (void)willTransferMessages:(id)fp8 toMailbox:(id)fp12 deleteOriginals:(BOOL)fp16;
- (void)transfer:(id)fp8 didCompleteWithError:(id)fp12;
- (id)messageToSelectIfEntireSelectionRemoved;
- (void)selectNextMessage:(BOOL)fp8;
- (void)selectPreviousMessage:(BOOL)fp8;
- (void)selectNextMessageMovingDownward:(BOOL)fp8;
- (void)selectNextMessageMovingUpward:(BOOL)fp8;
- (BOOL)includeDeleted;
- (void)setIncludeDeleted:(BOOL)fp8;
- (BOOL)shouldDeleteGivenCurrentState;
- (void)deleteSelectionAllowingMoveToTrash:(BOOL)fp8;
- (void)deleteMessages:(id)fp8 allowMoveToTrash:(BOOL)fp12 allowUndo:(BOOL)fp16;
- (void)undeleteMessagesAllowingUndo:(BOOL)fp8;
- (void)undeleteMessages:(id)fp8 allowUndo:(BOOL)fp12;
@end

@protocol MessageContentDisplay <NSObject>
+ (id)copyDocumentForMessage:(id)fp8 viewingState:(id)fp12;
- (id)contentView;
- (id)textView;
- (void)display:(id)fp8 inContainerView:(id)fp12 replacingView:(id)fp16;
- (void)prepareToRemoveView;
- (void)highlightSearchText:(id)fp8;
- (id)selectedText;
- (id)selectedWebArchive;
- (id)attachmentsInSelection;
- (id)webArchive;
- (void)adjustFontSizeBy:(int)fp8 viewingState:(id)fp12;
- (id)findTarget;
- (void)updateURLMatches:(id)fp8 viewingState:(id)fp12;
@end

@protocol NSCopying
- (id)copyWithZone:(struct _NSZone *)fp8;
@end

@protocol NSObject
- (BOOL)isEqual:(id)fp8;
- (unsigned int)hash;
- (Class)superclass;
- (Class)class;
- (id)self;
- (struct _NSZone *)zone;
- (id)performSelector:(SEL)fp8;
- (id)performSelector:(SEL)fp8 withObject:(id)fp12;
- (id)performSelector:(SEL)fp8 withObject:(id)fp12 withObject:(id)fp16;
- (BOOL)isProxy;
- (BOOL)isKindOfClass:(Class)fp8;
- (BOOL)isMemberOfClass:(Class)fp8;
- (BOOL)conformsToProtocol:(id)fp8;
- (BOOL)respondsToSelector:(SEL)fp8;
- (id)retain;
- (oneway void)release;
- (id)autorelease;
- (unsigned int)retainCount;
- (id)description;
@end

@protocol NSTextInput
- (void)insertText:(id)fp8;
- (void)doCommandBySelector:(SEL)fp8;
- (void)setMarkedText:(id)fp8 selectedRange:(struct _NSRange)fp12;
- (void)unmarkText;
- (BOOL)hasMarkedText;
- (long)conversationIdentifier;
- (id)attributedSubstringFromRange:(struct _NSRange)fp8;
- (struct _NSRange)markedRange;
- (struct _NSRange)selectedRange;
- (struct _NSRect)firstRectForCharacterRange:(struct _NSRange)fp8;
- (unsigned int)characterIndexForPoint:(struct _NSPoint)fp8;
- (id)validAttributesForMarkedText;
@end

@protocol QueryProgressMonitor
- (BOOL)shouldCancel;
@end

@protocol SplitHandleProtocol <NSObject>
- (void)setDrawsShadow:(BOOL)fp8;
@end

@protocol SyncableApp
- (id)syncerForDataType:(int)fp8;
- (id)ownerForDataType:(int)fp8;
- (id)interestedPartiesForDataType:(int)fp8;
- (BOOL)tellInterestedPartiesDataWillBeSyncedForDataType:(int)fp8;
- (void)tellInterestedPartiesDataWasSyncedForDataType:(int)fp8;
- (void)client:(id)fp8 mightWantToSyncEntityNames:(id)fp12;
@end

@protocol SyncableDataInterestedParty <NSObject>
- (BOOL)dataWillBeSynced;
- (void)dataWasSynced;
@end

@protocol SyncableDataOwner <NSObject>
- (BOOL)dataWillBeSyncedVersion:(id *)fp8 data:(id *)fp12;
- (BOOL)dataWasSyncedVersion:(id)fp8 newData:(id)fp12 acceptedChanges:(id)fp16;
@end

@interface MailApp (MFUserAgent) <MFUserAgent>
- (void)_runPasswordPanelInMainThreadWithInfo:(struct MailPasswordInfo *)fp8;
- (id)queryUserForPasswordWithMessage:(id)fp8 title:(id)fp12 remember:(char *)fp16;
- (void)_runAlertPanelInMainThreadWithInfo:(struct MailAlertInfo *)fp8;
- (int)runAlertPanelWithTitle:(id)fp8 defaultTitle:(id)fp12 alternateTitle:(id)fp16 otherTitle:(id)fp20 message:(id)fp24;
- (void)runNonModalAlertPanelForObject:(id)fp8 withError:(id)fp12;
- (void)dismissNonModalAlertPanelForObject:(id)fp8;
- (int)informUserOfError:(id)fp8;
- (BOOL)queryUserForYesNoWithMessage:(id)fp8 title:(id)fp12 yesTitle:(id)fp16 noTitle:(id)fp20;
- (BOOL)showCertificateTrustPanelForError:(id)fp8 certificates:(id)fp12;
- (id)displayStringForMailbox:(id)fp8;
- (BOOL)queryUserIfNeededToCreateMailbox:(id)fp8 orChooseNewMailbox:(id *)fp12;
- (id)queryUserToSelectMailbox:(id)fp8;
- (void)selectMailboxPanelDone:(id)fp8;
- (void)queryUserForBigMessageAction:(id)fp8 userResponse:(int *)fp12;
- (void)downloadBigMessage:(id)fp8;
- (void)storeBeingInvalidated:(id)fp8;
- (BOOL)shouldInvalidateMailbox:(id)fp8;
- (id)sharedAttachmentContextMenu;
- (BOOL)isTerminating;
- (BOOL)wakingFromSleep;
- (BOOL)personWithEmailIsOnline:(id)fp8;
- (BOOL)openTemporaryAttachments:(id)fp8 applicationBundle:(id)fp12;
@end

@interface MessageViewerBox : NSBox
{
    BOOL _dragSourceIsAcceptable;
}

- (unsigned int)draggingUpdated:(id)fp8;
- (void)draggingExited:(id)fp8;
- (BOOL)prepareForDragOperation:(id)fp8;
- (BOOL)performDragOperation:(id)fp8;
- (void)concludeDragOperation:(id)fp8;
- (BOOL)isOpaque;
- (void)drawRect:(struct _NSRect)fp8;

@end

@interface MessageViewer : NSResponder <MVMailboxSelectionOwner>
{
    MessageMall *_messageMall;
    TableViewManager *_tableManager;
    MessageContentController *_contentController;
    NSWindow *_window;
    ExpandingSplitView *_splitView;
    MailVerticalSplitView *_verticalSplitView;
    ColorBackgroundView *_viewerContainer;
    ColorBackgroundView *_mailboxesView;
    ASExtendedOutlineView *_outlineView;
    SearchTextField *_searchField;
    NSView *_searchFieldView;
    NSToolbarItem *_searchViewItem;
    NSString *_lastSearchPhrase;
    int _currentSearchType;
    int _currentSearchTarget;
    int _selectedTag;
    NSMenu *_tableHeaderMenu;
    MailboxesOutlineViewOwner *_outlineViewOwner;
    NSButton *newMailboxButton;
    NSPopUpButton *actionButton;
    VerticalSplitViewHandle *verticalSplitViewHandle;
    MailboxPaneBottomView *mailboxPaneBottomView;
    BOOL _shouldPreventTableViewResize;
    BOOL _shouldMakeTableViewSelectionVisible;
    BOOL _shouldPreventFirstViewResize;
    BOOL _shouldMakeMessageSelectionVisible;
    BOOL _showingDefaultSearchString;
    BOOL _updatingSearchField;
    BOOL _allowShowingDeletedMessages;
    BOOL _suppressWindowTitleUpdates;
    float _restoreMailboxPaneToWidthAfterDragOperation;
    float _lastSplitViewPosition;
    float _lastMailboxSplitPosition;
    float _lastDragXPosition;
    NSArray *_mailboxesToDisplayWhenVisible;
    NSToolbar *_toolbar;
    NSMutableDictionary *_toolbarItems;
    NSDictionary *_savedDefaults;
    NSMutableArray *_transferOperations;
    NSMutableDictionary *_viewerContents;
    float _splitViewPositionBeforeSearch;
    SplitterAnimation *_animation;
    SearchSliceView *_searchSliceView;
    BOOL _updatingToolbar;
    float _mailboxesViewWidthAtLastToolbarUpdate;
}

+ (id)allMessageViewers;
+ (id)allSingleMessageViewers;
+ (id)existingViewerForStore:(id)fp8;
+ (id)existingViewerForMailboxUid:(id)fp8;
+ (id)existingViewerForMessage:(id)fp8;
+ (id)newViewerForMailboxWithTag:(unsigned int)fp8;
+ (id)existingViewerShowingMessage:(id)fp8;
+ (void)registerNewViewer:(id)fp8;
+ (void)deregisterViewer:(id)fp8;
+ (void)showAllViewers;
+ (id)mailboxUidsBeingViewed;
+ (id)frontmostMessageViewer;
+ (void)searchForString:(id)fp8;
+ (id)_mailboxUidsForPaths:(id)fp8;
+ (void)saveDefaultsWithDelay;
+ (void)saveDefaults;
+ (void)restoreFromDefaults;
- (void)revealMessage:(id)fp8;
- (void)revealCurrentMessage;
- (void)_displayFollowup:(id)fp8;
- (void)_cantFindFollowupToMessage:(id)fp8;
- (void)showFollowupsToMessage:(id)fp8;
- (id)_mailboxUidsFromDefaults:(id)fp8;
- (id)initWithSavedDefaults:(id)fp8;
- (id)init;
- (id)plainInit;
- (id)initWithMailboxUids:(id)fp8;
- (void)dealloc;
- (void)_registerForApplicationNotifications;
- (void)_unregisterForApplicationNotifications;
- (void)_registerForStoreNotifications;
- (void)_unregisterForStoreNotifications;
- (void)storeBeingInvalidated:(id)fp8;
- (void)preferencesChanged:(id)fp8;
- (void)_setStore:(id)fp8;
- (BOOL)_isViewingMailboxUid:(id)fp8;
- (BOOL)_isViewingMessage:(id)fp8;
- (BOOL)_isShowingMessage:(id)fp8;
- (id)window;
- (void)show;
- (void)showAndMakeKey:(BOOL)fp8;
- (void)awakeFromNib;
- (void)_setupUI;
- (void)_setUpWindowContents;
- (void)_setupMailboxOutlineView;
- (void)_setupNextKeyViewLoop;
- (void)takeOverAsSelectionOwner;
- (void)resignAsSelectionOwner;
- (void)windowDidBecomeMain:(id)fp8;
- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8;
- (BOOL)windowShouldClose:(id)fp8;
- (void)windowWillMiniaturize:(id)fp8;
- (struct _NSSize)windowWillResize:(id)fp8 toSize:(struct _NSSize)fp12;
- (void)openMailboxesPaneToWidth:(float)fp8;
- (BOOL)mailboxesPaneIsOpen;
- (BOOL)mailboxesPaneIsOpenWideEnoughToUse;
- (void)splitViewDidResizeSubviews:(id)fp8;
- (void)splitViewWillResizeSubviews:(id)fp8;
- (void)splitViewDoubleClickedOnDivider:(id)fp8;
- (void)toggleMailboxesPane:(id)fp8;
- (void)splitView:(id)fp8 resizeSubviewsWithOldSize:(struct _NSSize)fp12;
- (BOOL)splitView:(id)fp8 canCollapseSubview:(id)fp12;
- (float)splitView:(id)fp8 constrainMinCoordinate:(float)fp12 ofSubviewAt:(int)fp16;
- (float)splitView:(id)fp8 constrainMaxCoordinate:(float)fp12 ofSubviewAt:(int)fp16;
- (float)maxMailboxesViewWidthAllowed;
- (float)idealMailboxesViewWidth;
- (void)updateMailboxButtonVisibilityForWidth:(float)fp8;
- (float)splitView:(id)fp8 constrainSplitPosition:(float)fp12 ofSubviewAt:(int)fp16;
- (id)selectedMailboxes;
- (id)selectedMailbox;
- (void)selectPathsToMailboxes:(id)fp8;
- (BOOL)mailboxIsExpanded:(id)fp8;
- (void)revealMailbox:(id)fp8;
- (id)mailboxSelectionWindow;
- (void)setSelectedMailboxes:(id)fp8;
- (id)selectedMessages;
- (void)setSelectedMessages:(id)fp8;
- (id)currentDisplayedMessage;
- (void)outlineViewDoubleClick:(id)fp8;
- (void)selectMailbox:(id)fp8;
- (void)keyDown:(id)fp8;
- (void)keyUp:(id)fp8;
- (void)_mailboxWasRenamed:(id)fp8;
- (void)mailboxSelectionChanged:(id)fp8;
- (void)_mallDidOpen;
- (void)_mallStructureDidChange;
- (void)smartMailboxCriteriaChanged:(id)fp8;
- (void)_setMailboxUids:(id)fp8;
- (BOOL)_selectionContainsMessagesWithDeletedStatusEqualTo:(BOOL)fp8;
- (BOOL)_selectionContainsMessagesWithReadStatusEqualTo:(BOOL)fp8;
- (BOOL)_selectionContainsMessagesWithFlaggedStatusEqualTo:(BOOL)fp8;
- (BOOL)_selectionContainsMessagesWithJunkMailLevelEqualTo:(int)fp8;
- (BOOL)_selectionContainsMessagesWithAttachments;
- (BOOL)atLeastOneSelectedMessageIsInOutbox:(id)fp8;
- (BOOL)_validateAction:(SEL)fp8 tag:(int)fp12;
- (BOOL)validateMenuItem:(id)fp8;
- (void)messageWasDisplayedInTextView:(id)fp8;
- (void)messageThreadSummaryWasDisplayedInTextView:(id)fp8;
- (void)checkNewMail:(id)fp8;
- (void)replyMessage:(id)fp8;
- (void)replyAllMessage:(id)fp8;
- (void)replyToSender:(id)fp8;
- (void)replyToOriginalSender:(id)fp8;
- (void)showComposeWindow:(id)fp8;
- (void)showAddressPanel:(id)fp8;
- (void)toggleAttachmentsArea:(id)fp8;
- (void)undeleteMessages:(id)fp8;
- (void)deleteMessages:(id)fp8;
- (void)deleteMessagesAllowingMoveToTrash:(BOOL)fp8;
- (void)selectAllMessages;
- (void)setFirstResponder;
- (void)replyViaIM:(id)fp8;
- (void)showAccountInfo:(id)fp8;
- (id)tableManager;
- (id)mailboxesOutlineViewOwner;
- (void)jumpToSelection:(id)fp8;
- (void)editorWithGatekeeperApproval:(id)fp8;
- (id)editorWithType:(int)fp8;
- (void)redirectMessage:(id)fp8;
- (void)forwardMessage:(id)fp8;
- (void)displaySelectedMessageInSeparateWindow:(id)fp8;
- (void)renameMailbox:(id)fp8;
- (void)moveMessagesToMailbox:(id)fp8;
- (void)copyMessagesToMailbox:(id)fp8;
- (id)_selectedMessagesWhoseFlag:(unsigned long)fp8 isEqualToState:(BOOL)fp12;
- (void)_changeFlag:(id)fp8 state:(BOOL)fp12 forMessages:(id)fp16 undoActionName:(id)fp20;
- (void)markAsRead:(id)fp8;
- (void)markAsUnread:(id)fp8;
- (void)markAsReadFromToolbar:(id)fp8;
- (void)markAsUnreadFromToolbar:(id)fp8;
- (void)markAsUnflagged:(id)fp8;
- (void)markAsFlagged:(id)fp8;
- (void)markAsFlaggedFromToolbar:(id)fp8;
- (void)markAsUnflaggedFromToolbar:(id)fp8;
- (void)changeColor:(id)fp8;
- (void)rebuildTableOfContents:(id)fp8;
- (void)_putMessageDataOntoPasteboard:(id)fp8 attributedString:(id)fp12 shouldDelete:(id)fp16 pasteboardType:(id)fp20;
- (void)_copyMessagesToPasteboard:(id)fp8 deleteWhenCopied:(BOOL)fp12 pasteboardType:(id)fp16;
- (void)_progressAlertDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (BOOL)_doCopy:(id)fp8 deleteWhenCopied:(BOOL)fp12;
- (void)copy:(id)fp8;
- (void)cut:(id)fp8;
- (void)_pasteData:(id)fp8 pasteboardType:(id)fp12 destination:(id)fp16;
- (void)paste:(id)fp8;
- (void)startSpeaking:(id)fp8;
- (void)stopSpeaking:(id)fp8;
- (void)speechSynthesizer:(id)fp8 didFinishSpeaking:(BOOL)fp12;
- (void)showPrintPanel:(id)fp8;
- (BOOL)send:(id)fp8 forDraft:(BOOL)fp12;
- (BOOL)send:(id)fp8;
- (void)saveAs:(id)fp8;
- (void)saveAllAttachments:(id)fp8;
- (id)defaultSearchString;
- (void)showDefaultSearchString;
- (id)_criterionForMailbox:(id)fp8;
- (id)mailboxSearchCriterionForScope:(int)fp8;
- (void)searchIndex:(id)fp8;
- (BOOL)_isShowingSearchResults;
- (unsigned int)_searchResultCount;
- (BOOL)_canSaveSearchWithTarget:(int)fp8;
- (BOOL)_canSearchSelectedMailboxes;
- (void)_showSearchSliceView;
- (void)_hideSearchSliceView;
- (void)_searchForString:(id)fp8;
- (void)_updateSearchStatus;
- (void)_clearSearch;
- (void)clearSearch:(id)fp8;
- (void)setupSearchParametersForTag:(int)fp8;
- (int)searchType;
- (int)searchTarget;
- (void)controlTextDidEndEditing:(id)fp8;
- (void)controlTextDidChange:(id)fp8;
- (void)_removeAttachmentsFromMessages:(id)fp8 fromStores:(id)fp12;
- (void)removeAttachments:(id)fp8;
- (void)sortByTagOfSender:(id)fp8;
- (void)focus:(id)fp8;
- (void)unfocus:(id)fp8;
- (void)openAllThreads:(id)fp8;
- (void)closeAllThreads:(id)fp8;
- (void)toggleThreadedMode:(id)fp8;
- (void)selectThread:(id)fp8;
- (void)selectPreviousInThread:(id)fp8;
- (void)selectNextInThread:(id)fp8;
- (void)showDeletions:(id)fp8;
- (void)hideDeletions:(id)fp8;
- (void)toggleContentsColumn:(id)fp8;
- (void)toggleMessageNumbersColumn:(id)fp8;
- (void)toggleMessageFlagsColumn:(id)fp8;
- (void)toggleFromColumn:(id)fp8;
- (void)togglePresenceColumn:(id)fp8;
- (void)toggleToColumn:(id)fp8;
- (void)toggleDateSentColumn:(id)fp8;
- (void)toggleDateReceivedColumn:(id)fp8;
- (void)toggleLocationColumn:(id)fp8;
- (void)toggleSizeColumn:(id)fp8;
- (void)writeDefaultsToArray:(id)fp8;
- (id)_saveDefaults;
- (void)_loadDefaults;
- (void)_setupFromDefaults;
- (id)_numberOfMessagesStringIsDrafts:(BOOL)fp8 omitUnread:(BOOL)fp12;
- (void)_updateWindowTitle;
- (void)_updateMessageMallUids:(id)fp8;
- (id)_currentMessageManager;
- (void)_setSplitViewPercentage:(float)fp8 animate:(BOOL)fp12;
- (void)animationDidEnd:(id)fp8;
- (void)messageWasSelected:(id)fp8 fromMessageBrowserController:(id)fp12;
- (void)scrollCurrentlySelectedMessageToTop;
- (void)messageWasDoubleClicked:(id)fp8;
- (void)messageBrowserView:(id)fp8 willStartDragWithEvent:(id)fp12;
- (void)draggedImage:(id)fp8 movedTo:(struct _NSPoint)fp12;
- (void)messageBrowserViewDidEndDragging:(id)fp8;
- (BOOL)transferSelectedMessagesToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12;
- (void)_reallyAnimateProgressInidicator;
- (void)_updateSearchStatusWithDelay;
- (void)threadDidExpand;
- (void)threadDidCollapse;
- (void)searchWillStart;
- (void)searchDidFinish;
- (void)searchDidUpdate;
- (id)selectedMailboxUids;
- (void)performSearch:(id)fp8;
- (void)saveSearch:(id)fp8;
- (void)reapplySortingRules:(id)fp8;
- (void)_returnToSenderSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)returnToSender:(id)fp8;
- (void)addSenderToAddressBook:(id)fp8;
- (void)markAsJunkMail:(id)fp8;
- (void)markMessagesAsJunkMail:(id)fp8 stores:(id)fp12;
- (void)_deleteJunkedMessages:(id)fp8 inStores:(id)fp12 moveToTrash:(BOOL)fp16;
- (void)synchronouslyMarkAsJunkMail:(id)fp8 inStores:(id)fp12 delete:(BOOL)fp16;
- (void)undoMarkMessagesAsJunkMail:(id)fp8 stores:(id)fp12;
- (void)markAsNotJunkMail:(id)fp8;
- (void)markMessagesAsNotJunkMail:(id)fp8 stores:(id)fp12;
- (void)synchronouslyMarkAsNotJunkMail:(id)fp8 inStores:(id)fp12;
- (BOOL)_transferSelectedMessagesToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12;
- (void)_reportError:(id)fp8;
- (void)transfer:(id)fp8 didCompleteWithError:(id)fp12;
- (id)undoManagerForMessageTransfer:(id)fp8;
- (void)_updateSearchItemLabel;

@end

@interface MessageViewer (AppleScript)
- (id)uniqueID;
- (id)objectSpecifier;
- (id)allMessages;
- (id)focusedMessages;
- (void)setFocusedMessages:(id)fp8;
- (int)appleScriptSortColumn;
- (void)setAppleScriptSortColumn:(int)fp8;
- (BOOL)isSortedAscending;
- (void)setIsSortedAscending:(BOOL)fp8;
- (BOOL)previewPaneVisible;
- (void)setPreviewPaneVisible:(BOOL)fp8;
- (id)visibleColumns;
- (void)setVisibleColumns:(id)fp8;
- (id)inbox;
- (id)outbox;
- (id)draftsMailbox;
- (id)sentMailbox;
- (id)trashMailbox;
- (id)junkMailbox;
- (void)setScriptingProperties:(id)fp8;
@end

@interface TableViewManager : NSObject <MessageBrowserController>
{
    ASExtendedTableView *_tableView;
    MessageMall *_messageMall;
    id _delegate;
    NSArray *_tableColumns;
    NSFont *_font;
    NSFont *_boldFont;
    NSMutableArray *_selection;
    NSArray *_selectionExcludingThreads;
    BOOL _suspendChangesToScrollingAndSelection;
    Message *_currentDisplayedMessage;
    struct _NSMapTable *_storeStateTable;
    NSMutableArray *_draggedMessages;
    NSMutableAttributedString *_truncatedString;
    NSMutableDictionary *_truncatedParagraphStyle;
    NSString *_availableStatusImageName;
    int leftmostTextColumn;
    struct {
        unsigned int includeDeleted:1;
        unsigned int isFocused:1;
        unsigned int wasSortedAscendingBeforeRankSort:1;
        unsigned int isShowingSearchResults:1;
        unsigned int sortColumnBeforeRankSort:8;
        unsigned int showAccountInLocationColumn:1;
        unsigned int showSenderColumnAlways:1;
        unsigned int hideSenderColumnAlways:1;
        unsigned int showReceiverColumnAlways:1;
        unsigned int hideReceiverColumnAlways:1;
        unsigned int showDateReceivedColumnAlways:1;
        unsigned int hideDateReceivedColumnAlways:1;
        unsigned int showDateSentColumnAlways:1;
        unsigned int hideDateSentColumnAlways:1;
        unsigned int showDateLastViewedColumnAlways:1;
        unsigned int hideDateLastViewedColumnAlways:1;
        unsigned int showLocationColumn:1;
        unsigned int hasScrolledSinceMailboxChange:1;
        unsigned int userChangedSelectionSinceMailboxChange:1;
        unsigned int threadOpeningIsInProgress:1;
        unsigned int threadClosingIsInProgress:1;
        unsigned int doubleClickThreadOpeningIsInProgress:1;
        unsigned int animatingThreadOpening:1;
        unsigned int animatingThreadClosing:1;
        unsigned int animateInSlowMotion:1;
        unsigned int dontUpdateTrackingRects:1;
        unsigned int dontReadWriteStoreSpecificDefaultsToMailbox:1;
        unsigned int useBoldFontForUnreadMessages:1;
        unsigned int clearingSearch:1;
        unsigned int changingSelection:1;
        unsigned int selectionShouldNotChange:1;
    } _flags;
    NSDictionary *_messageIDsToSelectWhenOpened;
    NSArray *_threadIDsToOpenWhenOpened;
    int colorHighlightLeftEdge;
    int colorHighlightWidth;
    int locationColumnPosition;
    int locationColumnWidth;
    int senderColumnPosition;
    int senderColumnWidth;
    int receiverColumnPosition;
    int receiverColumnWidth;
    int dateReceivedColumnPosition;
    int dateReceivedColumnWidth;
    int dateSentColumnPosition;
    int dateSentColumnWidth;
    int dateLastViewedColumnPosition;
    int dateLastViewedColumnWidth;
    int threadedUnreadColumnWidth;
    NSMutableDictionary *_columnWidthsBeforeSearch;
    int _windowWidthBeforeSearch;
    VisibleStateObject *_visibleStateBeforeSearch;
    NSMutableSet *_messagesInSelectedThread;
    MessageThread *threadBeingClosed;
    MessageThread *threadBeingOpened;
    struct __CFDictionary *_rowDrawingCache;
    NSMutableSet *_mouseTrackers;
    struct _NSPoint _lastMouseDownInUnreadColumnPoint;
    int _lastMouseDownInUnreadColumnEventNumber;
    struct _NSPoint _currentMouseLocationInWindow;
    float _amountToScrollDownAfterClosingThread;
    int _numberOfSelectedRowsBeforeTogglingThread;
    int _selectedRowBeforeTogglingThread;
    BOOL _unreadColumnResizableAfterResizingColumnsToFit;
}

+ (void)initialize;
- (void)awakeFromNib;
- (void)tableViewScrolled:(id)fp8;
- (void)_setupColumnHeaderIcon:(id)fp8 inColumnWithIdentifier:(id)fp12 accessibilityTitle:(id)fp16 alignment:(int)fp20;
- (int)_calcUnreadColumnWidthForUnreadCountString:(id)fp8;
- (void)_setupUnreadColumnMinWidth;
- (void)_setupUnreadColumnWidth;
- (void)_setupTableColumnWidths;
- (void)_configureColumnForEndTruncation:(id)fp8;
- (void)_configureColumnForDateCell:(id)fp8;
- (void)_configureColumnForImageCell:(id)fp8 alignment:(int)fp12;
- (void)_configureColumnForRolloverCell:(id)fp8 alignment:(int)fp12 action:(SEL)fp16;
- (void)showFollowupsToMessage:(id)fp8;
- (void)showFollowupsToMessageAtRow:(int)fp8;
- (void)_setupColumnsForTableView;
- (void)dealloc;
- (void)windowWillClose:(id)fp8;
- (id)delegate;
- (void)setDelegate:(id)fp8;
- (void)setMessageMall:(id)fp8;
- (void)readDefaultsFromDictionary:(id)fp8;
- (void)readColumnLayoutFromDictionary:(id)fp8;
- (void)writeDefaultsToDictionary:(id)fp8;
- (void)writeColumnLayoutToDictionary:(id)fp8;
- (void)setDontReadWriteStoreSpecificDefaultsToMailbox:(BOOL)fp8;
- (void)writeStoreSpecificDefaultsToMailboxUid:(id)fp8;
- (void)readStoreSpecificDefaultsFromMailboxUid:(id)fp8;
- (void)readStoreSpecificDefaultsFromDictionary:(id)fp8;
- (BOOL)canSelectNextMessage;
- (BOOL)canSelectPreviousMessage;
- (void)rulePreferencesChanged:(id)fp8;
- (void)viewerPreferencesChanged:(id)fp8;
- (BOOL)threadHasSelectedMessages:(id)fp8;
- (void)presencePreferenceChanged:(id)fp8;
- (void)threadColorPreferenceChanged:(id)fp8;
- (void)presenceImageChanged:(id)fp8;
- (void)presenceChanged:(id)fp8;
- (void)_updateTableHeaderToMatchCurrentSort;
- (void)tableView:(id)fp8 didClickTableColumn:(id)fp12;
- (id)_columnWithIdentifierTag:(int)fp8;
- (id)_unreadColumn;
- (BOOL)isColumnVisible:(int)fp8;
- (void)setColumn:(int)fp8 toVisible:(BOOL)fp12;
- (void)_setColumn:(int)fp8 toVisible:(BOOL)fp12;
- (BOOL)displaysMessageSizes;
- (void)setDisplaysReceiver:(BOOL)fp8 displaysDateSent:(BOOL)fp12 displaysDateLastViewed:(BOOL)fp16;
- (int)tableViewNumberOfColumnsToPinToLefthandSide:(id)fp8;
- (void)selectAllMessagesAndMakeFirstResponder;
- (void)makeMessageListFirstResponder;
- (void)setFont:(id)fp8;
- (id)font;
- (id)boldFont;
- (BOOL)isInThreadedMode;
- (void)toggleThreadedMode;
- (void)threadedModeDidChange:(id)fp8;
- (void)_invalidateSelectionExcludingThreads;
- (void)openThreadAtIndex:(int)fp8 andSelectMessage:(id)fp12 animate:(BOOL)fp16;
- (void)closeThreadAtIndex:(int)fp8 focusRow:(int)fp12 animate:(BOOL)fp16;
- (void)openAllThreads;
- (void)closeAllThreads;
- (void)toggleThread:(id)fp8;
- (void)toggleThread:(id)fp8 ignoreModifierKeys:(BOOL)fp12;
- (int)_indexOfMessageNearest:(int)fp8 numberOfRows:(int)fp12 threaded:(BOOL)fp16 downward:(BOOL)fp20;
- (BOOL)canSelectPreviousThreadedMessage;
- (BOOL)canSelectNextThreadedMessage;
- (BOOL)canSelectParentOfMessage;
- (BOOL)canSelectFirstReplyToMessage;
- (BOOL)canSelectNextReplyToParent;
- (BOOL)selectionIsExactlyOneOpenThread;
- (void)selectNextMessageMovingDownward:(BOOL)fp8;
- (void)selectNextMessageMovingUpward:(BOOL)fp8;
- (void)stepIntoSelectedThread;
- (void)stepOutOfSelectedThread;
- (BOOL)openSelectedThread;
- (void)selectNextMessage:(BOOL)fp8;
- (void)selectPreviousMessage:(BOOL)fp8;
- (void)selectParentOfMessage;
- (void)selectFirstReplyToMessage;
- (void)selectPeer:(BOOL)fp8;
- (void)selectNextReplyToParent;
- (void)selectPreviousReplyToParent;
- (void)showSelectionAndCenter:(BOOL)fp8;
- (BOOL)isSelectionVisible;
- (void)scrollRowToVisible:(int)fp8 position:(int)fp12;
- (int)tableView:(id)fp8 shouldScrollRowToVisible:(int)fp12;
- (BOOL)_isMessageInSelectedThread:(id)fp8;
- (void)_setNeedsDisplayForMessagesInSet:(id)fp8;
- (void)_setNeedsDisplayThreadColumnForMessagesInSet:(id)fp8;
- (void)_updateSelectedThreadList;
- (id)selectedThread;
- (void)_reallyUpdateTextViewerToSelection;
- (void)updateTextViewerToSelection;
- (BOOL)tableView:(id)fp8 shouldSelectRow:(int)fp12 byExtendingSelection:(BOOL)fp16;
- (void)selectionIsChanging:(id)fp8;
- (void)_selectOrDeselectMembersOfThread:(id)fp8 atIndex:(int)fp12 select:(BOOL)fp16;
- (void)selectionChanged:(id)fp8;
- (void)datesNeedRedisplay;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)_attributesForTruncatedParagraphStyle;
- (id)_colorForMessage:(id)fp8 inRow:(int)fp12;
- (id)_truncatedAttributedStringForString:(id)fp8 message:(id)fp12 row:(int)fp16 shouldIndent:(BOOL)fp20;
- (id)tableView:(id)fp8 sampleObjectValueForTableColumn:(id)fp12 row:(int)fp16;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)_updateColorHighlightEdges;
- (void)tableView:(id)fp8 didDragTableColumn:(id)fp12;
- (void)tableViewColumnDidMove:(id)fp8;
- (void)tableViewColumnDidResize:(id)fp8;
- (void)tableView:(id)fp8 willDisplaySampleCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (id)tableViewHighlightColor:(id)fp8;
- (int)tableView:(id)fp8 highlightStyleForRow:(int)fp12 inRect:(struct _NSRect *)fp16 color:(id *)fp20;
- (void)doubleClickedMessage:(id)fp8;
- (void)deleteKeyPressed;
- (void)deleteSelectionAllowingMoveToTrash:(BOOL)fp8;
- (id)selectionIncludingThreads:(BOOL)fp8;
- (id)selection;
- (void)_selectMessages:(id)fp8 scrollIfNeeded:(BOOL)fp12;
- (void)selectMessages:(id)fp8;
- (id)currentDisplayedMessage;
- (id)messageStore;
- (id)orderOfFromSubjectDateColumns;
- (id)tableView;
- (BOOL)tableView:(id)fp8 doCommandBySelector:(SEL)fp12;
- (id)_undoActionNameForMessages:(id)fp8;
- (void)_undeleteMessages:(id)fp8 allowUndo:(BOOL)fp12 unreadMessages:(id)fp16;
- (id)_unreadMessagesFromMessages:(id)fp8;
- (void)undeleteMessages:(id)fp8 allowUndo:(BOOL)fp12;
- (void)_redeleteMessages:(id)fp8 messagesToSelect:(id)fp12;
- (void)deleteMessages:(id)fp8 allowMoveToTrash:(BOOL)fp12 allowUndo:(BOOL)fp16;
- (void)undeleteMessagesAllowingUndo:(BOOL)fp8;
- (BOOL)shouldDeleteGivenCurrentState;
- (void)tableViewDraggedImage:(id)fp8 movedTo:(struct _NSPoint)fp12;
- (unsigned int)tableView:(id)fp8 draggingSourceOperationMaskForLocal:(BOOL)fp12;
- (id)messagesToTransfer;
- (void)willTransferMessages:(id)fp8 toMailbox:(id)fp12 deleteOriginals:(BOOL)fp16;
- (void)transfer:(id)fp8 didCompleteWithError:(id)fp12;
- (BOOL)transferSelectionToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12;
- (void)tableViewDragWillEnd:(id)fp8 operation:(unsigned int)fp12;
- (BOOL)tableView:(id)fp8 writeRows:(id)fp12 toPasteboard:(id)fp16;
- (id)_dragImageForRow:(int)fp8 event:(id)fp12 dragImageOffset:(struct _NSPoint *)fp16;
- (id)tableView:(id)fp8 dragImageForRowsWithIndexes:(id)fp12 event:(id)fp16 dragImageOffset:(struct _NSPoint *)fp20;
- (void)tableView:(id)fp8 willDrawRowsInRange:(struct _NSRange)fp12;
- (void)tableView:(id)fp8 didDrawRowsInRange:(struct _NSRange)fp12;
- (struct _NSRect)frameOfClickedCell;
- (struct _NSPoint)mouseLocationInWindow;
- (void)callWillDisplayCellForClickedCell;
- (void)setButtonCellNeedsDisplay;
- (void)tableView:(id)fp8 gotEvent:(id)fp12;
- (BOOL)shouldTrackMouse:(id)fp8;
- (id)tableView:(id)fp8 rangesForBackgroundShadingInRange:(struct _NSRange)fp12 shadingColors:(id *)fp20 leftColumnColors:(id *)fp24;
- (id)messageMall;
- (int)_indexOfFirstNonDeletedNonSelectedMessage:(int)fp8 withinRowRange:(struct _NSRange)fp12 goUp:(BOOL)fp20;
- (id)messageBrowserView;
- (id)messageToSelectIfEntireSelectionRemoved;
- (BOOL)includeDeleted;
- (void)setIncludeDeleted:(BOOL)fp8;

@end

@interface TableViewManager (AppleScript)
+ (id)_getDarkerThreadBackgroundColorForThread:(id)fp8;
+ (id)_getThreadBackgroundColorForThread:(id)fp8;
- (int)_columnForAppleScriptColumn:(int)fp8;
- (int)appleScriptSortColumn;
- (void)setAppleScriptSortColumn:(int)fp8;
- (id)appleScriptVisibleColumns;
- (void)setAppleScriptVisibleColumns:(id)fp8;
@end

@interface NSEvent (MailViewerEvent)
- (void)_setModifierFlags:(unsigned int)fp8;
@end

@interface MessageContentController : NSResponder
{
    Message *_message;
    MessageViewingState *_viewingState;
    ActivityMonitor *_documentMonitor;
    id _currentDisplay;
    id _threadDisplay;
    TextMessageDisplay *textDisplay;
    MessageHeaderDisplay *headerDisplay;
    NSView *contentContainerView;
    NSView *junkMailView;
    NSTextField *junkMailMessageField;
    NSButton *junkMailLoadHTMLButton;
    NSView *loadImagesView;
    NSButton *loadImagesButton;
    NSBox *bannerBorderBox;
    NSView *certificateView;
    NSButton *certificateButton;
    NSImageView *certificateImage;
    NSTextField *certificateMessageField;
    NSView *childBannerView;
    NSTextField *childBannerMessageField;
    NSImageView *childBannerImage;
    NSButton *childBannerButton;
    NSButton *childBannerHelpButton;
    NSView *parentBannerView;
    NSTextField *parentBannerMessageField;
    NSImageView *parentBannerImage;
    NSButton *parentBannerButton;
    NSView *parentApprovedOrRejectedBannerView;
    NSTextField *parentApprovedOrRejectedBannerMessageField;
    NSImageView *parentApprovedOrRejectedBannerImage;
    AttachmentsView *attachmentsView;
    ObjectCache *_documentCache;
    InvocationQueue *invocationQueue;
    double _foregroundLoadStartTime;
    double _backgroundLoadStartTime;
    double _backgroundLoadEndTime;
    NSString *_messageIDToRestoreInitialStateFor;
    struct _NSRect _initialVisibleRect;
    struct _NSRange _initialSelectedRange;
    NSArray *mostRecentHeaderOrder;
    NSTimer *_fadeTimer;
    NSView *_currentBanner;
    BOOL _hideBannerBorder;
    NSTextField *_widthResizableTextFieldInCurrentBanner;
    NSView *_rightNeighborOfWidthResizableTextFieldInCurrentBanner;
    BOOL isForPrinting;
    BOOL showDefaultHeadersStickily;
    MessageViewingState *stickyViewingState;
}

+ (void)setClass:(Class)fp8 forDisplayType:(id)fp12;
- (id)init;
- (void)setIsForPrinting:(BOOL)fp8;
- (void)setContentContainerView:(id)fp8;
- (void)setLoadImagesView:(id)fp8;
- (void)setJunkMailView:(id)fp8;
- (void)setCertificateView:(id)fp8;
- (void)setChildBannerView:(id)fp8;
- (void)setParentBannerView:(id)fp8;
- (void)setParentApprovedOrRejectedBannerView:(id)fp8;
- (void)readDefaultsFromDictionary:(id)fp8;
- (void)writeDefaultsToDictionary:(id)fp8;
- (void)dealloc;
- (void)stopAllActivity;
- (id)documentView;
- (id)currentDisplay;
- (void)_updateIfDisplayingMessage:(id)fp8;
- (void)_fetchDataForMessageAndUpdateDisplay:(id)fp8;
- (void)_messageMayHaveBecomeAvailable;
- (id)_messageTilingView;
- (void)fadeToEmpty;
- (void)_pushDocumentToCache;
- (void)_backgroundLoadFinished:(id)fp8;
- (void)_backgroundUrlificationFinished:(id)fp8 urlMatches:(id)fp12;
- (void)setMessage:(id)fp8 headerOrder:(id)fp12;
- (void)_setMessage:(id)fp8 headerOrder:(id)fp12;
- (void)_fetchContentsForMessage:(id)fp8 fromStore:(id)fp12 withViewingState:(id)fp16;
- (void)_startBackgroundLoad:(id)fp8;
- (id)message;
- (void)setMostRecentHeaderOrder:(id)fp8;
- (void)reloadCurrentMessage;
- (void)viewerPreferencesChanged:(id)fp8;
- (void)showJunkMailHelp:(id)fp8;
- (void)_removeCurrentBanner;
- (void)_bannerResized:(id)fp8;
- (void)_showBannerView:(id)fp8;
- (void)_showLoadImagesBanner;
- (void)_showCertificateBanner;
- (id)_fixBezelStyleOfHelpButtonInBannerView:(id)fp8;
- (void)_showJunkBanner;
- (BOOL)_showBannerIfMessageIsOutgoingMessageWaitingForParentApproval;
- (BOOL)_showBannerIfMessageIsPermissionRequestFromChild;
- (void)_updateBanner;
- (void)setShowBannerBorder:(BOOL)fp8;
- (void)setShowRevealMessageLink:(BOOL)fp8;
- (BOOL)showRevealMessageLink;
- (void)_addRecentAddress:(id)fp8;
- (void)markAsNotJunkMailClicked:(id)fp8;
- (void)_setJunkLevelToNotJunk;
- (void)approveChildRequest:(id)fp8;
- (void)rejectChildRequest:(id)fp8;
- (void)sendMessage:(id)fp8;
- (void)_messageFlagsDidChange:(id)fp8;
- (void)_updateDisplay;
- (void)_setCurrentDisplay:(id)fp8;
- (void)highlightSearchText:(id)fp8;
- (id)attachmentsView;
- (id)textView;
- (id)selectedText;
- (id)selectedWebArchive;
- (id)attachmentsInSelection;
- (id)webArchive;
- (void)clearCache;
- (id)viewingState;
- (id)viewingStateForMessage:(id)fp8;
- (void)cacheViewingState:(id)fp8 forMessage:(id)fp12;
- (void)displayString:(id)fp8;
- (void)initPrintInfo;
- (int)headerDetailLevel;
- (BOOL)showingAllHeaders;
- (void)setShowAllHeaders:(BOOL)fp8;
- (BOOL)remoteAttachmentsAreDownloaded;
- (void)makeStickyInfoFromViewingState:(id)fp8;
- (void)makeStickyShowDefaultHeaders;
- (void)keyDown:(id)fp8;
- (BOOL)pageDown;
- (BOOL)pageUp;
- (BOOL)currentlyViewingSource;
- (BOOL)_validateAction:(SEL)fp8 tag:(int)fp12;
- (id)findTarget;
- (BOOL)validateToolbarItem:(id)fp8 forSegment:(int)fp12;
- (BOOL)validateMenuItem:(id)fp8;
- (void)showAllHeaders:(id)fp8;
- (void)showFilteredHeaders:(id)fp8;
- (void)viewSource:(id)fp8;
- (void)toggleShowControlCharacters:(id)fp8;
- (void)toggleAttachmentsArea:(id)fp8;
- (void)showFirstAlternative:(id)fp8;
- (void)showPreviousAlternative:(id)fp8;
- (void)showNextAlternative:(id)fp8;
- (void)_messageWouldHaveLoadedRemoteURL:(id)fp8;
- (void)downloadRemoteContent:(id)fp8;
- (void)showCertificate:(id)fp8;
- (void)showBestAlternative:(id)fp8;
- (void)changeTextEncoding:(id)fp8;
- (void)makeFontBigger:(id)fp8;
- (void)makeFontSmaller:(id)fp8;
- (void)jumpToSelection:(id)fp8;
- (void)takeFindStringFromSelection:(id)fp8;
- (void)saveAttachments:(id)fp8;

@end

@interface MessageTextView : NSTextView
{
    unsigned int _deletingText:1;
    unsigned int _actuallyImportsGraphics:1;
    unsigned int _actuallyRichText:1;
    unsigned int _isTrackingMouse:1;
}

+ (void)initialize;
- (id)defaultFont;
- (id)initWithFrame:(struct _NSRect)fp8;
- (void)dealloc;
- (void)setDelegate:(id)fp8;
- (id)_attachmentForPoint:(struct _NSPoint)fp8;
- (id)attachmentForEvent:(id)fp8;
- (id)menuForEvent:(id)fp8;
- (void)setSelectedRange:(struct _NSRange)fp8 affinity:(int)fp16 stillSelecting:(BOOL)fp20;
- (void)selectText:(id)fp8;
- (void)keyDown:(id)fp8;
- (void)pasteWithCurrentStyle:(id)fp8;
- (id)typingAttributes;
- (void)adjustFontSizeBy:(int)fp8;
- (void)makeFontBigger:(id)fp8;
- (void)makeFontSmaller:(id)fp8;
- (id)hitTest:(struct _NSPoint)fp8;
- (BOOL)acceptsFirstResponder;
- (void)mouseDown:(id)fp8;
- (void)selectAll:(id)fp8;
- (void)originalSelectAll:(id)fp8;
- (void)doCommandBySelector:(SEL)fp8;
- (BOOL)shouldChangeTextInRange:(struct _NSRange)fp8 replacementString:(id)fp16;
- (void)didChangeText;
- (void)changeQuoteLevel:(id)fp8;
- (BOOL)validateMenuItem:(id)fp8;
- (void)setImportsGraphics:(BOOL)fp8;
- (BOOL)importsGraphics;
- (void)setRichText:(BOOL)fp8;
- (BOOL)isRichText;
- (BOOL)readSelectionFromPasteboard:(id)fp8 type:(id)fp12;
- (BOOL)_readSelectionFromPasteboard:(id)fp8 type:(id)fp12 useCurrentStyle:(BOOL)fp16;
- (id)dragImageForSelectionWithEvent:(id)fp8 origin:(struct _NSPoint *)fp12;
- (id)originalDragImageForSelectionWithEvent:(id)fp8 origin:(struct _NSPoint *)fp12;
- (void)copyWithGatekeeperApproval:(id)fp8;
- (void)copy:(id)fp8;
- (BOOL)writeSelectionToPasteboard:(id)fp8 type:(id)fp12;
- (BOOL)writeSelectionToPasteboard:(id)fp8 types:(id)fp12;
- (id)readablePasteboardTypes;
- (id)writablePasteboardTypes;
- (id)acceptableDragTypes;
- (unsigned int)dragOperationForDraggingInfo:(id)fp8 type:(id)fp12;
- (void)textView:(id)fp8 clickedOnCell:(id)fp12 event:(id)fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp36;
- (void)insertNewline:(id)fp8;
- (void)drawRect:(struct _NSRect)fp8;
- (BOOL)linkTrackMouseDown:(id)fp8;
- (struct _NSRect)_cellFrameForAttachment:(id)fp8 atCharIndex:(int)fp12;
- (void)layoutManager:(id)fp8 didCompleteLayoutForTextContainer:(id)fp12 atEnd:(BOOL)fp16;
- (void)resetCursorRects;
- (id)view:(id)fp8 stringForToolTip:(int)fp12 point:(struct _NSPoint)fp16 userData:(void *)fp24;
- (BOOL)moreThanOneAttachmentSelected;
- (id)selectedAttachments;
- (id)imageOfAttachmentsFromRange:(struct _NSRange)fp8 lowerLeft:(struct _NSPoint *)fp16;
- (void)openAttachment:(id)fp8;
- (void)openAttachmentWithApplication:(id)fp8;
- (void)chooseApplicationToOpenAttachment:(id)fp8;
- (void)saveAttachment:(id)fp8;
- (void)saveAttachmentToDownloadsDirectory:(id)fp8;
- (void)deleteAttachment:(id)fp8;
- (void)viewAttachmentInline:(id)fp8;
- (void)importInvitations:(id)fp8;
- (void)deleteDraggedAttachments:(id)fp8;
- (void)_attachmentFinishedDownloading:(id)fp8;
- (void)orderFrontFontPanel:(id)fp8;
- (id)searchString;
- (struct _NSRange)selectedSearchRange;
- (void)showSearchResultsRange:(struct _NSRange)fp8;

@end

@interface MessageTextContainer : NSTextContainer
{
    struct _NSSize imageSize;
    struct _NSSize linkSize;
}

- (id)initWithContainerSize:(struct _NSSize)fp8;
- (void)setImageSize:(struct _NSSize)fp8;
- (struct _NSSize)imageSize;
- (void)setLinkSize:(struct _NSSize)fp8;
- (struct _NSSize)linkSize;
- (BOOL)isSimpleRectangularTextContainer;
- (BOOL)containsPoint:(struct _NSPoint)fp8;
- (struct _NSRect)lineFragmentRectForProposedRect:(struct _NSRect)fp8 sweepDirection:(int)fp24 movementDirection:(int)fp28 remainingRect:(struct _NSRect *)fp32;

@end

@interface MessagePrinter : NSObject
{
    NSMutableArray *_messages;
    MessageContentController *_contentController;
    NSWindow *_window;
    NSPrintOperation *printOperation;
    NSPrintInfo *printInfo;
    unsigned int messageIndex;
    NSString *originalFilename;
    NSView *accessoryView;
    unsigned int scalingBehavior;
    NSWindow *onscreenWindow;
}

+ (unsigned int)scalingBehaviorFromDefaults;
+ (void)setScalingBehaviorInDefaults:(unsigned int)fp8;
- (id)init;
- (void)dealloc;
- (BOOL)loadNibFile;
- (void)toggleScalingBehavior:(id)fp8;
- (void)initPrintInfo;
- (void)setMessages:(id)fp8;
- (void)regularMessageIsReady:(id)fp8;
- (void)printNextMessage;
- (void)printMessages:(id)fp8 viewingState:(id)fp12 showDefaultHeaders:(BOOL)fp16 forWindow:(id)fp20;
- (void)printSheetDidClose;
- (void)printOperationDidRun:(id)fp8 success:(BOOL)fp12 contextInfo:(id)fp16;
- (void)cleanUp;
- (struct _NSRect)windowFrameForBehavior:(unsigned int)fp8 printInfo:(id)fp12;
- (struct _CGDirectDisplayID *)displayIDForWindow:(id)fp8;

@end

@interface MessagePrinterAccessoryView : NSView
{
    MessagePrinter *messagePrinter;
    NSMatrix *scalingBehaviorMatrix;
}

- (void)updateFromPrintInfo;
- (void)finalWritePrintInfo;

@end

@interface RankCell : NSCell
{
    float _rank;
}

- (id)rank;
- (void)setRank:(id)fp8;
- (void)setObjectValue:(id)fp8;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface MessageEditor : NSObject
{
    NSPopUpButton *fromPopup;
    NSPopUpButton *signaturePopup;
    NSPopUpButton *priorityPopup;
    AddressTextField *_toField;
    AddressTextField *_ccField;
    NSTextField *_subjectField;
    AddressTextField *_bccField;
    AddressTextField *_replyToField;
    ComposeHeaderView *_composeHeaderView;
    OldCompletionController *completionController;
    NSButton *signButton;
    NSButton *encryptButton;
    NSWindow *_window;
    ComposeBackEnd *_backEnd;
    NSMutableArray *accessoryViewOwners;
    struct {
        unsigned int showAllHeaders:1;
        unsigned int hasRichText:1;
        unsigned int userSavedMessage:1;
        unsigned int userWantsToCloseWindow:1;
        unsigned int hasIncludedAttachmentsFromOriginal:1;
        unsigned int userKnowsSaveFailed:1;
        unsigned int chatShouldBeEnabled:1;
        unsigned int finalSpellCheckingInProgress:1;
        unsigned int canSignFromAnyAccount:1;
        unsigned int knowsCanSignFromAnyAccount:1;
        unsigned int registeredForNotifications:1;
    } _flags;
    NSToolbar *_toolbar;
    NSMutableDictionary *_toolbarItems;
    int _messageType;
    DraggingTextView *addressFieldEditor;
    NSPanel *_deliveryFallbackPanel;
    id _deliveryErrorLabel;
    id _deliveryFallbackErrorLabel;
    id _deliveryFallbackPopupButton;
    struct _NSPoint _originalCascadePoint;
    ActivityProgressPanel *_progressAlert;
    NSView *imageStatusView;
    NSTextField *imageFileSizeLabel;
    NSTextField *imageFileSizeTextField;
    NSPopUpButton *imageSizePopup;
    NSProgressIndicator *imageResizingProgressWheel;
    NSTextField *imageResizingProgressField;
    NSMutableArray *_imageResizers;
    unsigned int _textLengthForLastEstimatedMessageSize;
    unsigned int _signatureOverhead;
    unsigned int _encryptionOverhead;
    NSMutableArray *_unapprovedRecipients;
}

+ (id)allocWithZone:(struct _NSZone *)fp8;
+ (id)createEditorWithType:(int)fp8 settings:(id)fp12;
+ (id)existingEditorViewingMessage:(id)fp8;
+ (void)handleFailedDeliveryOfMessage:(id)fp8 store:(id)fp12 error:(id)fp16;
+ (void)restoreDraftMessage:(id)fp8 withSavedState:(id)fp12;
+ (void)saveDefaults;
+ (void)restoreFromDefaults;
+ (void)setNeedsAutosave;
+ (void)autosaveTimerFired;
+ (void)showEditorWithSavedState:(id)fp8;
+ (void)_emailAddresses:(id)fp8 approvedOrRejected:(BOOL)fp12;
+ (void)emailAddressesApproved:(id)fp8;
+ (void)emailsRejected:(id)fp8;
- (void)_setSendWindowsFriendlyAttachments:(BOOL)fp8;
- (void)show;
- (void)readDefaultsFromDictionary:(id)fp8;
- (void)_appendDefaultsToArray:(id)fp8;
- (void)writeDefaultsToDictionary:(id)fp8;
- (void)setHeaders:(id)fp8;
- (id)window;
- (void)appendAddresses:(id)fp8 toHeader:(id)fp12;
- (void)addBccHeader:(id)fp8;
- (void)addReplyToHeader:(id)fp8;
- (void)saveMessageToDrafts:(id)fp8;
- (void)makeRichText:(id)fp8;
- (void)makePlainText:(id)fp8;
- (void)changeTextEncoding:(id)fp8;
- (void)showPrintPanel:(id)fp8;
- (void)searchIndex:(id)fp8;
- (BOOL)validateAction:(SEL)fp8 tag:(int)fp12;
- (BOOL)validateMenuItem:(id)fp8;
- (void)_reallySend;
- (void)_sendMessageCheckRecipients:(BOOL)fp8 checkSpelling:(BOOL)fp12;
- (void)_send:(id)fp8;
- (void)noRecipientsSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)send:(id)fp8;
- (void)emptyMessageSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)malformedAddressSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)changeReplyMode:(id)fp8;
- (void)alwaysSendWindowsFriendlyAttachments:(id)fp8;
- (void)sendWindowsFriendlyAttachments:(id)fp8;
- (void)insertFile:(id)fp8;
- (void)showAddressPanel:(id)fp8;
- (void)appendMessagesWithGatekeeperApproval:(id)fp8;
- (void)appendMessages:(id)fp8;
- (void)chatWithRecipients:(id)fp8;
- (void)changeHeaderField:(id)fp8;
- (void)recipientsDidChange:(id)fp8;
- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8;
- (id)windowWillReturnFieldEditor:(id)fp8 toObject:(id)fp12;
- (BOOL)windowShouldClose:(id)fp8;
- (void)windowDidResize:(id)fp8;
- (void)windowDidMove:(id)fp8;
- (void)windowDidBecomeKey:(id)fp8;
- (void)windowDidResignKey:(id)fp8;
- (void)changeFromHeader:(id)fp8;
- (void)undoSignatureChange:(id)fp8;
- (void)changeSignature:(id)fp8;
- (void)editSignatures:(id)fp8;
- (void)changeSpellCheckingBehavior:(id)fp8;
- (void)setMessagePriority:(id)fp8;
- (id)directoryForAttachment:(id)fp8;
- (void)textView:(id)fp8 doubleClickedOnCell:(id)fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32;
- (void)textView:(id)fp8 clickedOnCell:(id)fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32;
- (void)textView:(id)fp8 draggedCell:(id)fp12 inRect:(struct _NSRect)fp16 event:(id)fp32 atIndex:(unsigned int)fp36;
- (BOOL)cachedGatekeeperApprovalStatusForAttachment:(id)fp8;
- (void)cacheGatekeeperApprovalStatus:(BOOL)fp8 forAttachment:(id)fp12;
- (BOOL)textView:(id)fp8 shouldReadSelectionFromPasteboard:(id)fp12 type:(id)fp16 result:(char *)fp20;
- (unsigned int)_signatureOverhead;
- (unsigned int)_encryptionOverhead;
- (unsigned long long)_estimateMessageSize;
- (void)_updateAttachmentStatus;
- (unsigned char)_isAttachmentScalable:(id)fp8;
- (unsigned char)_attachmentsContainScalableImage:(id)fp8 scalables:(id)fp12;
- (void)_updateImageSizePopup;
- (void)mailAttachmentsAdded:(id)fp8;
- (void)_mailAttachmentsDeleted;
- (void)mailAttachmentsDeleted:(id)fp8;
- (void)enableCompletion:(BOOL)fp8 forTextField:(id)fp12;
- (id)backEnd;
- (void)setBackEnd:(id)fp8;
- (void)updateUIAfterAppleScriptModification:(id)fp8;
- (void)deliveryFallbackPanelSendLater:(id)fp8;
- (void)deliveryFallbackPanelEditMessage:(id)fp8;
- (void)deliveryFallbackPanelTryOtherAccount:(id)fp8;
- (void)presenceChanged:(id)fp8;
- (id)_frameSaveName;
- (void)_configureTextField:(id)fp8 isAddressField:(BOOL)fp12;
- (void)_setupAddressField:(id)fp8;
- (void)dealloc;
- (id)init;
- (void)subjectChanged;
- (void)addressFieldChanged;
- (BOOL)_sendButtonShouldBeEnabled;
- (void)_setupInlineSpellChecking;
- (void)composePrefsChanged;
- (id)initWithType:(int)fp8 settings:(id)fp12;
- (void)backEnd:(id)fp8 didBeginBackgroundLoadActivity:(id)fp12;
- (void)_registerForNotificationsIfNeeded;
- (void)backEnd:(id)fp8 didCompleteLoadForEditorSettings:(id)fp12;
- (void)backEnd:(id)fp8 didCompleteMessageContentLoadForEditorSettings:(id)fp12;
- (void)_progressAlertDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (BOOL)_prepareMessageToBeSaved:(id)fp8;
- (BOOL)_shouldSaveDraft;
- (void)saveMessage;
- (void)_clearFieldIfHidden:(id)fp8;
- (void)composeHeaderViewWillBeginCustomization:(id)fp8;
- (void)composeHeaderViewDidEndCustomization:(id)fp8;
- (void)mailAccountsDidChange;
- (void)updateFromAndSignatureControls;
- (void)updateSignatureControlOverridingExistingSignature:(BOOL)fp8;
- (void)updateSignButtonImages;
- (void)updateSignButtonTooltip;
- (void)updateEncryptButtonImages;
- (void)updateEncryptButtonTooltip;
- (BOOL)canSignFromAnyAccount;
- (void)updateSecurityControls;
- (void)updateIgnoredWords;
- (void)updateCcOrBccMyselfFieldWithSender:(id)fp8 oldSender:(id)fp12;
- (void)_setupField:(id)fp8 withAddressesForKey:(id)fp12 visibleSelector:(SEL)fp16;
- (void)updateHeaderFields;
- (void)configureButtonsAndPopUps;
- (void)backEndDidChange:(id)fp8;
- (void)_setMessageStatusOnOriginalMessage;
- (void)backEndDidAppendMessageToOutbox:(id)fp8 result:(int)fp12;
- (BOOL)backEnd:(id)fp8 shouldDeliverMessage:(id)fp12;
- (BOOL)backEnd:(id)fp8 shouldSaveMessage:(id)fp12;
- (void)_setUserSavedMessage:(BOOL)fp8;
- (void)backEndDidSaveMessage:(id)fp8 result:(int)fp12;
- (id)_missingCertificatesMessageForRecipients:(id)fp8 uponDelivery:(BOOL)fp12;
- (void)backEnd:(id)fp8 didCancelMessageDeliveryForMissingCertificatesForRecipients:(id)fp12;
- (void)backEnd:(id)fp8 didCancelMessageDeliveryForError:(id)fp12;
- (void)shouldDeliverMessageAlertWithoutEncryptionSheetDidDismiss:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)backEnd:(id)fp8 didCancelMessageDeliveryForEncryptionError:(id)fp12;
- (void)reportDeliveryFailure:(id)fp8;
- (void)chooseAlternateDeliveryAccountSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)deliveryFailureSheetDidClose:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)textFieldBeganOrEndedEditing:(id)fp8;
- (void)openPanelSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)saveState;
- (void)forceWindowClose;
- (void)closeConfirmSheetDidEnd:(id)fp8 returnCode:(int)fp12 forSave:(void *)fp16;
- (void)replyMessage:(id)fp8;
- (void)replyAllMessage:(id)fp8;
- (void)presencePreferenceChanged:(id)fp8;
- (void)updatePresenceButtonState;
- (void)updatePresenceButtonStateForAddresses:(id)fp8;
- (void)_recipientsWithoutKeysSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)securityControlChanged:(id)fp8;
- (BOOL)_imageStatusHidden;
- (void)_showImageStatusView;
- (void)_hideImageStatusView;
- (struct _NSSize)_imageSizeForTag:(int)fp8;
- (struct _NSSize)_selectedImageSize;
- (id)_maxImageSizeAsString;
- (void)_processNextImageResizer;
- (void)_ImageResizeDidFinish:(id)fp8;
- (BOOL)_isResizingImages;
- (id)_resizerForAttatchment:(id)fp8;
- (BOOL)_resizeAttachment:(id)fp8;
- (BOOL)_resizeImageAttachments:(id)fp8;
- (void)imageSizePopupChanged:(id)fp8;
- (void)_setUnapprovedRecipients:(id)fp8;
- (void)askApprovalSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)_finalSpellCheckCompleted:(id)fp8;
- (BOOL)loadEditorNib;
- (void)appendAttributedString:(id)fp8;
- (void)updateMainContentView;
- (Class)backEndClass;
- (id)mainContentView;
- (id)attachmentStatusNeighbourView;
- (id)attachments;
- (void)insertOriginalAttachments:(id)fp8;
- (void)removeAttachments:(id)fp8;
- (void)toggleRich:(id)fp8;
- (void)pasteAsQuotation:(id)fp8;
- (void)updateContentsToShowSignature:(id)fp8;
- (unsigned long long)textLengthEstimate;
- (BOOL)isRichText;
- (void)setRichText:(BOOL)fp8;
- (void)appendMessageArray:(id)fp8;
- (void)addFileWrappersForPaths:(id)fp8;
- (void)redisplayChangedAttachment:(id)fp8;
- (void)updateRichTextFlag;

@end

@interface ComposeBackEnd : NSObject
{
    id _delegate;
    NSArray *_originalMessages;
    NSMutableDictionary *_originalMessageHeaders;
    NSMutableDictionary *_originalMessageBodies;
    NSArray *_originalMessageStores;
    WebArchive *_originalMessageWebArchive;
    NSMutableDictionary *_cleanHeaders;
    NSMutableDictionary *_extraRecipients;
    NSMutableDictionary *_directoriesByAttachment;
    NSUndoManager *_undoManager;
    ActivityMonitor *_backgroundSaveActivity;
    MailboxUid *_lastDraftsMailboxUid;
    NSString *_lastMessageId;
    NSData *_lastMessageIdDigest;
    NSData *_messageIdDigestOfMessageBeingSaved;
    struct {
        unsigned int type:4;
        unsigned int sendFormat:2;
        unsigned int contentIsLink:1;
        unsigned int hadChangesBeforeSave:1;
        unsigned int hasChanges:1;
        unsigned int showAllHeaders:1;
        unsigned int isUndeliverable:1;
        unsigned int isDeliveringMessage:1;
        unsigned int isSavingMessage:1;
        unsigned int sendWindowsFriendlyAttachments:2;
        unsigned int contentsWasEditedByUser:1;
        unsigned int delegateRespondsToDidChange:1;
        unsigned int delegateRespondsToDidAppendMessage:1;
        unsigned int delegateRespondsToDidSaveMessage:1;
        unsigned int delegateRespondsToDidBeginLoad:1;
        unsigned int delegateRespondsToDidEndLoad:1;
        unsigned int delegateRespondsToShouldSaveMessage:1;
        unsigned int delegateRespondsToShouldDeliverMessage:1;
        unsigned int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1;
        unsigned int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1;
        unsigned int delegateRespondsToDidCancelMessageDeliveryForError:1;
        unsigned int signIfPossible:1;
        unsigned int encryptIfPossible:1;
        unsigned int knowsCanSign:1;
        unsigned int canSign:1;
        unsigned int shouldDownloadRemoteAttachments:1;
        unsigned int overrideRemoteAttachmentsPreference:1;
        unsigned int preferredEncoding;
    } _flags;
    NSString *_contentForAddressBookUpdate;
    NSString *_vcardPathForAddressBookUpdate;
    BOOL didAbortReply;
}

- (void)dealloc;
- (id)init;
- (void)setDidAbortReply:(BOOL)fp8;
- (id)delegate;
- (void)setDelegate:(id)fp8;
- (BOOL)hasChanges;
- (void)setHasChanges:(BOOL)fp8;
- (id)undoManager;
- (void)setUndoManager:(id)fp8;
- (void)setType:(int)fp8;
- (int)type;
- (void)setShouldDownloadRemoteAttachments:(BOOL)fp8;
- (void)setIsUndeliverable:(BOOL)fp8;
- (BOOL)isUndeliverable;
- (BOOL)sendWindowsFriendlyAttachments;
- (void)setSendWindowsFriendlyAttachments:(BOOL)fp8;
- (id)originalMessage;
- (id)originalMessageHeaders;
- (id)originalMessageBody;
- (void)setOriginalMessage:(id)fp8;
- (void)setOriginalMessages:(id)fp8;
- (id)directoryForAttachment:(id)fp8;
- (id)message;
- (id)account;
- (id)deliveryAccount;
- (id)sender;
- (void)setSender:(id)fp8;
- (id)subject;
- (void)setSubject:(id)fp8;
- (id)messageID;
- (void)setShowAllHeaders:(BOOL)fp8;
- (void)setSendFormat:(int)fp8;
- (int)sendFormat;
- (void)setContentIsLink:(BOOL)fp8;
- (BOOL)contentIsLink;
- (BOOL)okToAddSignature;
- (id)signatureId;
- (id)signature;
- (void)setSignature:(id)fp8;
- (void)setMessagePriority:(int)fp8;
- (int)displayableMessagePriority;
- (void)addHeaders:(id)fp8;
- (id)addressListForHeader:(id)fp8;
- (void)setAddressList:(id)fp8 forHeader:(id)fp12;
- (void)insertAddress:(id)fp8 forHeader:(id)fp12 atIndex:(unsigned int)fp16;
- (void)removeAddressForHeader:(id)fp8 atIndex:(unsigned int)fp12;
- (BOOL)isAddressHeaderKey:(id)fp8;
- (BOOL)deliverMessage;
- (BOOL)isDeliveringMessage;
- (void)_synchronouslyAppendMessageToOutboxWithContents:(id)fp8;
- (void)_backgroundAppendEnded:(id)fp8;
- (void)_backgroundSaveEnded:(id)fp8;
- (BOOL)saveMessage;
- (BOOL)isSavingMessage;
- (void)removeLastDraft;
- (BOOL)isEditingMessage:(id)fp8;
- (void)setSignIfPossible:(BOOL)fp8;
- (void)setEncryptIfPossible:(BOOL)fp8;
- (id)allRecipients;
- (id)recipientsThatHaveNoKeyForEncryption;
- (unsigned long)preferredEncoding;
- (void)setPreferredEncoding:(unsigned long)fp8;
- (BOOL)canSign;
- (BOOL)canEncryptForAllRecipients;
- (void)_configureLastDraftInformationFromHeaders:(id)fp8;
- (void)_finishedLoadingEditorSettings:(id)fp8;
- (void)_synchronouslyLoadForEditorSettings:(id)fp8;
- (void)loadWithEditorSettings:(id)fp8;
- (BOOL)hasContents;
- (BOOL)containsRichText;
- (id)outgoingMessageUsingWriter:(id)fp8 contents:(id)fp12 headers:(id)fp16 isDraft:(BOOL)fp20;
- (void)loadContentsForMessage:(id)fp8 body:(id)fp12;
- (id)makeCopyOfContentsForDraft:(BOOL)fp8;

@end

@interface ComposeBackEnd (Internal)
- (void)_setupDefaultRecipientsFirstTime:(BOOL)fp8;
- (void)_synchronouslySaveMessageWithContents:(id)fp8;
- (id)_allRecipients;
- (void)saveRecipients;
- (id)replyAddressForMessage:(id)fp8;
@end

@interface AddressTextField : AutosizingTextField <NSCopying>
{
    BOOL _addressField;
    BOOL _allowsMultipleAddresses;
    NSMutableArray *trackingRectTags;
    AddressAttachment *expandedAtomAttachment;
    AddressAttachment *attachmentBeingDragged;
    int addressAtomType;
    NSUndoManager *undoManager;
    NSMutableArray *stringsWithNoRecords;
    NSMutableArray *stringsAwaitingRecords;
    NSMutableDictionary *recordsForStrings;
    NSMutableArray *addressRects;
    struct _NSRange draggedSourceAtomsRange;
    BOOL isDraggingFromSelf;
}

- (void)dealloc;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (id)insertInScrollViewWithMaxLines:(unsigned int)fp8;
- (void)_scrollToEnd:(id)fp8;
- (void)sizeToFit;
- (void)appendAddressList:(id)fp8 operation:(unsigned int)fp12;
- (unsigned int)insertionPositionForMousePoint:(struct _NSPoint)fp8;
- (void)getAddressRectsForAtoms;
- (id)emailAddressesFromABRecordUIDs:(id)fp8;
- (id)emailAddressesFromFiles:(id)fp8;
- (void)setAddressField:(BOOL)fp8;
- (BOOL)addressField;
- (BOOL)allowsMultipleAddresses;
- (void)setAllowsMultipleAddresses:(BOOL)fp8;
- (int)addressAtomType;
- (void)setAddressAtomType:(int)fp8;
- (void)setExpandedAtomAttachment:(id)fp8;
- (unsigned int)draggingEntered:(id)fp8;
- (unsigned int)draggingUpdated:(id)fp8;
- (unsigned int)textView:(id)fp8 draggingEntered:(id)fp12;
- (unsigned int)textView:(id)fp8 draggingUpdated:(id)fp12;
- (void)draggingExited:(id)fp8;
- (BOOL)prepareForDragOperation:(id)fp8;
- (void)concludeDragOperation:(id)fp8;
- (void)textView:(id)fp8 clickedOnCell:(id)fp12 event:(id)fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp36;
- (void)selectTextBeforePosition:(int)fp8;
- (void)selectTextAfterPosition:(int)fp8;
- (void)textView:(id)fp8 doubleClickedOnCell:(id)fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32;
- (void)expandGroupAddress:(id)fp8;
- (void)editAddress:(id)fp8;
- (void)removeAddress:(id)fp8;
- (BOOL)validateUserInterfaceItem:(id)fp8;
- (BOOL)_performOperation:(unsigned int)fp8 usingPasteboard:(id)fp12 sender:(id)fp16;
- (BOOL)performDragOperation:(id)fp8;
- (BOOL)textView:(id)fp8 shouldReadSelectionFromPasteboard:(id)fp12 type:(id)fp16 result:(char *)fp20;
- (void)textView:(id)fp8 draggedImage:(id)fp12 endedAt:(struct _NSPoint)fp16 operation:(unsigned int)fp24;
- (void)draggedImage:(id)fp8 endedAt:(struct _NSPoint)fp12 operation:(unsigned int)fp20;
- (void)setAttachmentBeingDragged:(id)fp8;
- (unsigned int)draggingSourceOperationMaskForLocal:(BOOL)fp8;
- (void)textView:(id)fp8 concludeDragOperation:(id)fp12;
- (void)undo:(id)fp8;
- (void)redo:(id)fp8;
- (id)undoManager;
- (void)setAttributedStringValue:(id)fp8;
- (void)textDidEndEditing:(id)fp8;
- (BOOL)textShouldEndEditing:(id)fp8;
- (void)setFrame:(struct _NSRect)fp8;
- (void)setFrameSize:(struct _NSSize)fp8;
- (void)atomicizeAllAddresses;
- (void)recklesslyAtomicizeAllAddresses;
- (void)domainForMatchingDidChange;
- (void)addressesNeedRedisplay:(id)fp8;
- (void)addressChanged:(id)fp8;
- (void)resetCursorRects;

@end

@interface NSTextFieldCell (ShouldntTheAppKitBeDoingThis)
- (void)selectWithFrame:(struct _NSRect)fp8 inView:(id)fp24 editor:(id)fp28 delegate:(id)fp32 start:(int)fp36 length:(int)fp40;
@end

@interface UnreadQueryProgressMonitor : NSObject <QueryProgressMonitor>
{
    unsigned int sequenceNumber;
    unsigned int librarySequenceNumber;
}

- (id)initWithSequenceNumber:(unsigned int)fp8 librarySequenceNumber:(unsigned int)fp12;
- (BOOL)shouldCancel;

@end

@interface MailboxesController : NSObject
{
    NSMutableArray *_accountsWithChildren;
    NSWindow *_newMailboxPanel;
    NSTextField *_newMailboxField;
    NSTextField *_newMailboxMessage;
    NSButton *_newMailboxOKButton;
    NSPopUpButton *_accountPopup;
    NSMenuItem *_newMenuItem;
    id _currentMailboxSelectionOwner;
    BOOL _currentTransferIsCopy;
    MailboxUid *_selectedParent;
    MailboxUid *_currentTransferMailbox;
    BOOL smartMailboxesNeedSaving;
    BOOL isSavingSyncResults;
    int currentFileVersion;
    id _menuEnabler;
    SEL _menuEnablerSelector;
    NSMutableSet *rootMailboxMenus;
}

+ (id)iconForMailboxUid:(id)fp8 smallSize:(BOOL)fp12;
+ (id)filteredMailUserInfoDictionary:(id)fp8;
+ (id)mergeOldMailUserInfoDictionary:(id)fp8 withSyncChanges:(id)fp12;
- (id)init;
- (void)dealloc;
- (void)awakeFromNib;
- (void)setMoveMenuItem:(id)fp8;
- (void)setMoveContextMenuItem:(id)fp8;
- (void)setCopyMenuItem:(id)fp8;
- (void)setCopyContextMenuItem:(id)fp8;
- (void)readDefaults;
- (void)saveDefaults;
- (id)accountsWithChildren;
- (void)_reloadAccountsWithChildren;
- (void)mailboxListingDidChange:(id)fp8;
- (void)setCurrentTransferMailbox:(id)fp8 deletedOriginals:(BOOL)fp12;
- (id)currentTransferMailbox;
- (BOOL)currentTransferDeletesOriginals;
- (id)mailboxSelectionOwner;
- (void)setMailboxSelectionOwnerFrom:(id)fp8;
- (void)resignMailboxSelectionOwnerFor:(id)fp8;
- (id)mailboxSelectionOwnerFromSender:(id)fp8;
- (BOOL)validateMenuItem:(id)fp8;
- (void)_synchronouslyCreateNewMailboxWithName:(id)fp8 parent:(id)fp12;
- (void)_configureNewMailboxPanelForAccount:(id)fp8;
- (void)newMailbox:(id)fp8;
- (void)newMailboxSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)newSmartMailbox:(id)fp8;
- (void)editSmartMailbox:(id)fp8;
- (void)newFolder:(id)fp8;
- (void)newGroup:(id)fp8;
- (void)accountPopupChanged:(id)fp8;
- (void)_synchronouslyDeleteMailboxes:(id)fp8;
- (void)deleteMailbox:(id)fp8;
- (void)_synchronouslySetName:(id)fp8 andParent:(id)fp12 forMailboxes:(id)fp16;
- (void)renameMailbox:(id)fp8;
- (void)userEditedMailboxName:(id)fp8;
- (void)exportMailbox:(id)fp8;
- (void)setSpecialMailbox:(id)fp8;
- (void)queueUnreadCountUpdate;
- (void)coalesceUnreadCountUpdate;
- (void)libraryMessagesAdded:(id)fp8;
- (void)libraryFlagsChanged:(id)fp8;
- (void)startUnreadCountUpdateWithSequenceNumbers:(id)fp8;
- (void)updateUnreadCountsForSequenceNumber:(id)fp8 librarySequenceNumber:(id)fp12;
- (void)controlTextDidChange:(id)fp8;
- (void)okClicked:(id)fp8;
- (void)cancelClicked:(id)fp8;
- (void)bringUpTransferMenu:(id)fp8;
- (void)_setRootMailboxMenu:(id)fp8;
- (void)menuNeedsUpdate:(id)fp8;
- (BOOL)menuHasKeyEquivalent:(id)fp8 forEvent:(id)fp12 target:(id *)fp16 action:(SEL *)fp20;
- (void)_removeAllItemsFromMenu:(id)fp8;
- (void)reallyTearDownDynamicMenus;
- (void)tearDownDynamicMenus:(id)fp8;
- (void)_addMailboxItemsToMenu:(id)fp8 startingFromMailbox:(id)fp12 includeSmartMailboxes:(BOOL)fp16;
- (void)_addMailboxItemsToMenu:(id)fp8 startingFromMailbox:(id)fp12;
- (void)setMenuEnabler:(id)fp8 selector:(SEL)fp12;
- (id)_menuItemForMailbox:(id)fp8;
- (void)_addItemsStartingWithMailbox:(id)fp8 toMenu:(id)fp12 withIndentationLevel:(int)fp16;
- (void)addMailboxItemsToMenu:(id)fp8 target:(id)fp12 action:(SEL)fp16 startingAtMailbox:(id)fp20 showUnreadCounts:(BOOL)fp24 includeSmartMailboxes:(BOOL)fp28;
- (void)addMailboxItemsToMenu:(id)fp8 target:(id)fp12 action:(SEL)fp16 startingAtMailbox:(id)fp20 showUnreadCounts:(BOOL)fp24;
- (void)addMailboxItemsToMenu:(id)fp8 target:(id)fp12 action:(SEL)fp16 includeSmartMailboxes:(BOOL)fp20;
- (void)addMailboxItemsToMenu:(id)fp8 target:(id)fp12 action:(SEL)fp16;
- (id)menuItemForMailbox:(id)fp8 target:(id)fp12 action:(SEL)fp16 showUnreadCounts:(BOOL)fp20;
- (BOOL)moveAccount:(id)fp8 toAfterAccount:(id)fp12;
- (BOOL)fileManager:(id)fp8 shouldProceedAfterError:(id)fp12;
- (BOOL)removeAccount:(id)fp8;
- (BOOL)moveMailboxes:(id)fp8 toParentMailbox:(id)fp12;
- (void)_synchronouslyCopyMailboxes:(id)fp8 toParent:(id)fp12 originalParent:(id)fp16;
- (BOOL)copyMailboxes:(id)fp8 toParentMailbox:(id)fp12;
- (BOOL)moveOrCopy:(id)fp8 smartMailboxes:(id)fp12 toIndex:(unsigned int)fp16;
- (void)addSmartMailbox:(id)fp8 select:(BOOL)fp12;
- (void)tentativelyAddSmartMailbox:(id)fp8;
- (void)smartMailboxWasEdited:(id)fp8;
- (void)addSmartMailboxFolder:(id)fp8;
- (id)smartMailboxes;
- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8;
- (id)smartMailboxesPath;
- (void)saveSmartMailboxes:(id)fp8;
- (void)writeSmartMailboxesToDisk;
- (id)readSmartMailboxesFromDisk;
- (id)loadDefaultSmartMailboxes;
- (id)smartMailboxesDictionaryRepresentations;
- (id)smartMailboxesDictionaryRepresentationsFilterSyncData:(BOOL)fp8;
- (id)smartMailboxesFromDictionaryRepresentations:(id)fp8;
- (id)smartMailboxesFromDictionaryRepresentations:(id)fp8 andMergeOldUserInfoFromMailboxes:(BOOL)fp12;
- (void)syncSmartMailboxes;
- (BOOL)dataWillBeSyncedVersion:(id *)fp8 data:(id *)fp12;
- (BOOL)dataWasSyncedVersion:(id)fp8 newData:(id)fp12 acceptedChanges:(id)fp16;

@end

@interface MailboxesOutlineViewOwner : NSObject <MVMailboxSelectionOwner>
{
    id _delegate;
    ASExtendedOutlineView *_outlineView;
    NSArray *_savedSelection;
    NSFont *_normalFont;
    NSFont *_boldFont;
    NSMutableAttributedString *_cellValue;
    BOOL putSmartMailboxesAtTheBottom;
    float _idealOutlineViewWidth;
    float _minimumWidthNeededToUseMailboxes;
    float _minimizedOutlineViewWidth;
    NSArray *_specialMailboxUids;
    NSTimer *_progressIndicatorTimer;
    NSMutableDictionary *_mailboxesShowingProgress;
    struct __CFDictionary *_mailboxesByActivity;
    int minimumRowHeightForFont;
}

+ (void)deliveryFailureHasHappened:(id)fp8;
+ (void)userDidSaveAsDraft:(id)fp8;
+ (void)messagesWereAddedToMailboxes:(id)fp8;
+ (void)accountWasAdded:(id)fp8;
+ (void)allViewersAreClosed;
+ (BOOL)shouldShowOutbox;
+ (BOOL)shouldShowDrafts;
+ (void)setShouldShowOutbox:(BOOL)fp8;
+ (void)setShouldShowDrafts:(BOOL)fp8;
+ (void)tellAllInstancesToShowSpecialMailbox:(id)fp8;
+ (void)startWatchingForIncomingDrafts;
+ (void)stopWatchingForIncomingDrafts;
+ (BOOL)atLeastOneAccountStoresDraftsOnServer;
+ (BOOL)draftsHasMessageWithNoWindow;
+ (void)openDraftsMailboxes;
- (id)init;
- (void)dealloc;
- (void)_invalidateProgressIndicatorTimer;
- (void)setOutlineView:(id)fp8;
- (void)monitoredActivityStarted:(id)fp8;
- (void)monitoredActivityEnded:(id)fp8;
- (void)monitoredActivityAddedTarget:(id)fp8;
- (void)monitoredActivityRemovedTarget:(id)fp8;
- (void)stopProgressForMailboxPaths:(id)fp8;
- (id)mailboxesForActivity:(id)fp8;
- (void)setDelegate:(id)fp8;
- (float)idealWidthForSubtree:(id)fp8;
- (float)idealOutlineViewWidth;
- (float)minimizedOutlineViewWidth;
- (float)minimumWidthNeededToUseMailboxes;
- (id)selectedMailbox;
- (id)selectedMailboxes;
- (void)selectPathsToMailboxes:(id)fp8;
- (BOOL)canSelectMailbox:(id)fp8;
- (void)revealMailbox:(id)fp8;
- (BOOL)_revealPathToMailbox:(id)fp8 andSelect:(BOOL)fp12 extendingSelection:(BOOL)fp16;
- (BOOL)mailboxIsExpanded:(id)fp8;
- (unsigned int)numberOfSpecialMailboxes;
- (id)specialMailboxUids;
- (unsigned int)numberOfSmartMailboxes;
- (BOOL)outboxIsEmpty;
- (void)messageIsBeingDelivered:(id)fp8;
- (void)showOutboxForSlowDeliveryOfMessage:(id)fp8;
- (void)outboxContentsChanged:(id)fp8;
- (id)outlineView:(id)fp8 child:(int)fp12 ofItem:(id)fp16;
- (BOOL)outlineView:(id)fp8 isItemExpandable:(id)fp12;
- (int)outlineView:(id)fp8 numberOfChildrenOfItem:(id)fp12;
- (BOOL)outlineView:(id)fp8 shouldExpandItem:(id)fp12;
- (id)iconForMailboxUid:(id)fp8 smallSize:(BOOL)fp12;
- (id)mailboxSelectionWindow;
- (void)editNameOfMailbox:(id)fp8;
- (BOOL)outlineView:(id)fp8 shouldEditTableColumn:(id)fp12 item:(id)fp16;
- (BOOL)control:(id)fp8 textShouldEndEditing:(id)fp12;
- (void)controlTextDidEndEditing:(id)fp8;
- (BOOL)control:(id)fp8 textView:(id)fp12 doCommandBySelector:(SEL)fp16;
- (id)outlineView:(id)fp8 objectValueForTableColumn:(id)fp12 byItem:(id)fp16;
- (id)outlineView:(id)fp8 persistentObjectForItem:(id)fp12;
- (id)outlineView:(id)fp8 itemForPersistentObject:(id)fp12;
- (int)outlineView:(id)fp8 heightOfRow:(int)fp12;
- (void)redrawProgressIndicators:(id)fp8;
- (void)redrawRowsForMailboxesAtPaths:(id)fp8;
- (BOOL)_isMailboxOffline:(id)fp8 level:(int)fp12 alertState:(int *)fp16;
- (void)_configureCell:(id)fp8 forMailboxUid:(id)fp12 forTableColumn:(id)fp16;
- (void)outlineView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 item:(id)fp20;
- (unsigned int)outlineView:(id)fp8 draggingSourceOperationMaskForLocal:(BOOL)fp12;
- (void)outlineView:(id)fp8 didEndDragWithImage:(id)fp12 atPoint:(struct _NSPoint)fp16 operation:(unsigned int)fp24;
- (BOOL)outlineView:(id)fp8 writeItems:(id)fp12 toPasteboard:(id)fp16;
- (id)outlineView:(id)fp8 dragImage:(id)fp12 forRowsWithIndexes:(id)fp16 tableColumns:(id)fp20 event:(id)fp24 offset:(struct _NSPoint *)fp28;
- (unsigned int)outlineView:(id)fp8 validateDrop:(id)fp12 proposedItem:(id)fp16 proposedChildIndex:(int)fp20;
- (BOOL)outlineView:(id)fp8 acceptDrop:(id)fp12 item:(id)fp16 childIndex:(int)fp20;
- (void)outlineViewSelectionDidChange:(id)fp8;
- (void)outlineViewItemDidExpand:(id)fp8;
- (void)outlineViewItemDidCollapse:(id)fp8;
- (void)selectAllInOutlineView:(id)fp8;
- (void)setFirstResponderAfterMouseDownOnOutlineView:(id)fp8;
- (int)totalUnreadCountForItem:(id)fp8;
- (BOOL)outlineView:(id)fp8 handleDoubleClickEvent:(id)fp12 forItem:(id)fp16 inRow:(int)fp20;
- (BOOL)outlineView:(id)fp8 shouldTrackMouseInCell:(id)fp12 forTableColumn:(id)fp16 item:(id)fp20;
- (void)showOfflineStatus:(id)fp8;
- (void)offlineAlertSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)unreadCountChanged:(id)fp8;
- (void)startShowingOutbox;
- (void)startShowingDrafts;
- (BOOL)outboxContainsMessageWhoseAccountIsOffline;
- (void)openDraftsMailboxes;
- (void)_reloadChildrenOfMailboxUid:(id)fp8;
- (void)mailboxListingDidChange:(id)fp8;
- (void)accountOfflineStatusDidChange:(id)fp8;
- (void)accountsChanged:(id)fp8;
- (void)viewerPreferencesChanged:(id)fp8;
- (BOOL)outlineView:(id)fp8 shouldCollapseAutoExpandedItemsForDeposited:(BOOL)fp12;
- (void)readDefaultsFromDictionary:(id)fp8;
- (void)writeDefaultsToDictionary:(id)fp8;
- (id)outlineView:(id)fp8 toolTipForCell:(id)fp12 rect:(struct _NSRect *)fp16 tableColumn:(id)fp20 item:(id)fp24 mouseLocation:(struct _NSPoint)fp28;

@end

@interface EditingTableColumn : NSTableColumn
{
    int rowBeingEdited;
}

- (void)awakeFromNib;
- (void)beginEditingRow:(int)fp8;
- (void)endEditing;
- (int)rowBeingEdited;
- (id)dataCellForRow:(int)fp8;

@end

@interface MailboxesScrollView : NSScrollView
{
}

- (void)tile;

@end

@interface FontsAndColorsPreferences : NSPreferencesModule
{
    NSPopUpButton *mailboxListFontPopup;
    NSComboBox *mailboxListFontSizePopup;
    NSPopUpButton *messageListFontPopup;
    NSComboBox *messageListFontSizePopup;
    NSPopUpButton *messageFontPopup;
    NSComboBox *messageFontSizePopup;
    NSPopUpButton *fixedPitchFontPopup;
    NSComboBox *fixedPitchFontSizePopup;
    NSButton *fixedPitchSwitch;
    NSPopUpButton *colorPopupOne;
    NSPopUpButton *colorPopupTwo;
    NSPopUpButton *colorPopupThree;
    NSPopUpButton *lastColorPopupSelected;
    NSButton *colorQuotesButton;
    NSTextView *exampleTextView;
    NSArray *colorList;
    BOOL colorizeIncomingMail;
}

- (void)initializeFromDefaults;
- (void)_setFontMenuForPopup:(id)fp8 fixedPitchOnly:(BOOL)fp12;
- (BOOL)isResizable;
- (id)titleForIdentifier:(id)fp8;
- (id)windowTitle;
- (void)awakeFromNib;
- (void)useFixedPitchFontClicked:(id)fp8;
- (void)_setOtherColor:(id)fp8 forPopup:(id)fp12;
- (void)_setColor:(id)fp8 forPopup:(id)fp12;
- (void)_updateExampleColors;
- (void)_updateColorList;
- (void)colorQuotesButtonClicked:(id)fp8;
- (void)colorPopupChanged:(id)fp8;
- (void)colorPicked:(id)fp8;
- (BOOL)_setTitle:(id)fp8 forPopup:(id)fp12;
- (void)_setTitle:(id)fp8 forComboBox:(id)fp12;
- (void)mailboxListFontChanged:(id)fp8;
- (void)mailboxListFontSizeChanged:(id)fp8;
- (void)messageListFontChanged:(id)fp8;
- (void)messageListFontSizeChanged:(id)fp8;
- (void)messageFontChanged:(id)fp8;
- (void)setMessageFont:(id)fp8 size:(float)fp12;
- (void)setFixedPitchFont:(id)fp8 size:(float)fp12;
- (void)fixedPitchFontChanged:(id)fp8;
- (void)fontPopupChanged:(id)fp8;

@end

@interface MailApp (AppleScriptFontsAndColorsPreferences)
- (BOOL)colorQuotedText;
- (void)setColorQuotedText:(BOOL)fp8;
- (id)mailboxListFont;
- (void)setMailboxListFont:(id)fp8;
- (float)mailboxListFontSize;
- (void)setMailboxListFontSize:(float)fp8;
- (id)messageListFont;
- (void)setMessageListFont:(id)fp8;
- (float)messageListFontSize;
- (void)setMessageListFontSize:(float)fp8;
- (id)messageFont;
- (void)setMessageFont:(id)fp8;
- (float)messageFontSize;
- (void)setMessageFontSize:(float)fp8;
- (BOOL)useFixedWidthFont;
- (void)setUseFixedWidthFont:(BOOL)fp8;
- (id)fixedWidthFont;
- (void)setFixedWidthFont:(id)fp8;
- (float)fixedWidthFontSize;
- (void)setFixedWidthFontSize:(float)fp8;
- (void)setQuotingColor:(int)fp8 forLevel:(int)fp12;
- (int)quotingColorForLevel:(int)fp8;
- (int)quotingColorValue:(id)fp8;
- (int)levelOneQuotingColor;
- (void)setLevelOneQuotingColor:(int)fp8;
- (int)levelTwoQuotingColor;
- (void)setLevelTwoQuotingColor:(int)fp8;
- (int)levelThreeQuotingColor;
- (void)setLevelThreeQuotingColor:(int)fp8;
@end

@interface ComposingPreferences : NSPreferencesModule
{
    NSPopUpButton *defaultFormatButton;
    NSButton *alwaysCCMyselfSwitch;
    NSPopUpButton *ccOrBccButton;
    NSButton *replyUsingSameFormatSwitch;
    NSButton *expandAliasesSwitch;
    NSButton *useQuoteBarsSwitch;
    NSPopUpButton *spellCheckingPopUpButton;
    NSButton *replyQuotingSwitch;
    NSMatrix *quotingBehaviorMatrix;
    NSTextField *quotingBehaviorLabel;
    NSButton *matchDomainsSwitch;
    NSTextField *matchingDomainField;
    NSPopUpButton *sendingAccountButton;
    NSButton *useAddressCompletionSwitch;
    NSButton *editServerListButton;
    NSPanel *ldapServerPanel;
    NSView *placeHolderView;
    ABLDAP_ConfigController *serverListController;
    BOOL endEditingSimply;
}

- (BOOL)isResizable;
- (id)titleForIdentifier:(id)fp8;
- (id)windowTitle;
- (void)_postComposePreferencesChanged;
- (void)_sizeToFitWithinSuperview:(id)fp8;
- (void)initializeFromDefaults;
- (void)replyUsingSameFormatClicked:(id)fp8;
- (void)useQuoteBarsClicked:(id)fp8;
- (void)replyQuotingBehaviorChanged:(id)fp8;
- (void)quotingBehaviorChanged:(id)fp8;
- (void)spellCheckingBehaviorChanged:(id)fp8;
- (void)alwaysCCMyselfClicked:(id)fp8;
- (void)expandAliasesClicked:(id)fp8;
- (void)defaultMessageFormatChanged:(id)fp8;
- (void)setMessageFormat:(int)fp8;
- (void)useAddressCompletionClicked:(id)fp8;
- (void)_ldapServerListChanged;
- (void)editServerListClicked:(id)fp8;
- (void)matchDomainsClicked:(id)fp8;
- (void)controlTextDidEndEditing:(id)fp8;
- (void)okClicked:(id)fp8;
- (void)sendingAccountClicked:(id)fp8;

@end

@interface MailApp (ApplescriptComposingPreferences)
- (int)defaultMessageFormat;
- (void)setDefaultMessageFormat:(int)fp8;
- (BOOL)autosaveComposeWindows;
- (void)setAutosaveComposeWindows:(BOOL)fp8;
- (int)spellCheckingBehavior;
- (void)setSpellCheckingBehavior:(int)fp8;
- (BOOL)expandGroupAddresses;
- (void)setExpandGroupAddresses:(BOOL)fp8;
- (BOOL)useAddressCompletion;
- (void)setUseAddressCompletion:(BOOL)fp8;
- (id)ldapServerNamed:(id)fp8;
- (id)ldapServers;
- (void)insertInLdapServers:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInLdapServers:(id)fp8;
- (void)removeFromLdapServersAtIndex:(unsigned int)fp8;
- (BOOL)replyInSameFormat;
- (void)setReplyInSameFormat:(BOOL)fp8;
- (BOOL)alwaysCCMyself;
- (void)setAlwaysCCMyself:(BOOL)fp8;
- (BOOL)alwaysBCCMyself;
- (void)setAlwaysBCCMyself:(BOOL)fp8;
- (BOOL)includeOriginalMessage;
- (void)setIncludeOriginalMessage:(BOOL)fp8;
- (BOOL)includeAllOfOriginalMessage;
- (void)setIncludeAllOfOriginalMessage:(BOOL)fp8;
- (BOOL)shouldCheckIntranetDomains;
- (BOOL)signOutgoingMessages;
- (void)setSignOutgoingMessages:(BOOL)fp8;
- (BOOL)encryptOutgoingMessages;
- (void)setEncryptOutgoingMessages:(BOOL)fp8;
- (BOOL)inlineSpellCheckingEnabled;
- (void)setInlineSpellCheckingEnabled:(BOOL)fp8;
- (id)intranetDomains;
- (void)setShouldCheckIntranetDomains:(BOOL)fp8 withString:(id)fp12;
@end

@interface ViewerPreferences : NSPreferencesModule
{
    NSButton *_highlightThreadCheckbox;
    NSColorWell *_threadHighlightColorWell;
    NSButton *loadURLsSwitch;
    NSButton *showPresenceSwitch;
    NSButton *showUnreadMessagesInBoldSwitch;
    NSButton *useSmartAddressesSwitch;
    NSPopUpButton *headerDetailPopup;
    NSTableView *customHeaderTable;
    NSButton *addHeaderButton;
    NSButton *removeHeaderButton;
    NSPanel *customHeaderPanel;
    NSMutableArray *filteredHeaders;
    int nextRowToSelectAfterEditing;
    BOOL isEditingHeader;
}

+ (void)postViewingPreferencesChanged;
+ (void)postPresencePreferenceChanged;
- (void)awakeFromNib;
- (void)dealloc;
- (BOOL)isResizable;
- (id)titleForIdentifier:(id)fp8;
- (id)windowTitle;
- (void)_initializeHeaderDetailLevelPopup;
- (void)_updateCustomHeaderUI;
- (void)initializeFromDefaults;
- (void)loadURLsClicked:(id)fp8;
- (void)showPresenceClicked:(id)fp8;
- (void)useSmartAddressesClicked:(id)fp8;
- (void)editCustomHeadersClicked;
- (void)_customHeaderSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)_headerTableBeganEditing:(id)fp8;
- (void)_headerTableEndedEditing:(id)fp8;
- (void)_removeInvalidHeaders;
- (void)_endEditingHeader;
- (void)okClicked:(id)fp8;
- (void)cancelClicked:(id)fp8;
- (void)removeHeaderClicked:(id)fp8;
- (void)addHeaderClicked:(id)fp8;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)tableView:(id)fp8 setObjectValue:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (void)headerDetailLevelChanged:(id)fp8;
- (void)highlightThreadClicked:(id)fp8;
- (void)threadHighlightColorChanged:(id)fp8;
- (void)showUnreadMessagesInBoldChanged:(id)fp8;

@end

@interface MailApp (ApplescriptViewerPreferences)
- (BOOL)downloadHTMLAttachments;
- (void)setDownloadHTMLAttachments:(BOOL)fp8;
- (int)headerDetail;
- (void)setHeaderDetail:(int)fp8;
- (BOOL)shouldShowPresence;
- (void)setShouldShowPresence:(BOOL)fp8;
- (BOOL)shouldHighlightThreads;
- (void)setShouldHighlightThreads:(BOOL)fp8;
- (BOOL)shouldShowMailboxesAtLeft;
- (void)setShouldShowUnreadMessagesInBold:(BOOL)fp8;
- (BOOL)shouldShowUnreadMessagesInBold;
@end

@interface AccountDisplayCell : NSTextFieldCell
{
    AccountPreferences *_accountPreferences;
    NSTextFieldCell *_descriptionTextCell;
    NSTextFieldCell *_activeTextCell;
    NSImageCell *_imageCell;
    MailAccount *_account;
}

- (id)initWithAccountPreferences:(id)fp8;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (void)dealloc;
- (void)setAccountPreferences:(id)fp8;
- (void)setMailAccount:(id)fp8;
- (BOOL)trackMouse:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 untilMouseUp:(BOOL)fp32;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface AccountPreferences : NSPreferencesModule <SyncableDataInterestedParty>
{
    NSMutableArray *_accounts;
    AccountDetails *_accountDetails;
    NSTabView *detailTabView;
    NSTableView *accountsTable;
    NSButton *createAccountButton;
    NSButton *removeAccountButton;
    NSPopUpButton *accountTypePopup;
    NSTextField *accountTypeString;
    NSTextField *accountName;
    NSTextField *fullNameField;
    NSTextField *emailAddressField;
    NSTextField *username;
    NSTextField *hostname;
    NSTextField *password;
    NSPopUpButton *smtpAccountPopup;
    NSButton *deliveryOptionsButton;
    NSButton *removeDeliveryAccountButton;
    NSTableView *deliveryAccountsTable;
    NSPanel *editDeliveryAccountPanel;
    NSView *outlookWebAccessView;
    NSTextField *outlookWebAccessServerName;
    NSButton *editAliasesButton;
    MailAccount *_accountBeingEdited;
    MailAccount *_accountBeingValidated;
    BOOL _accountBeingEditedWasEnabledWhenEditingStarted;
    BOOL _creatingNewAccount;
    int _indexOfNewAccount;
    struct {
        unsigned int userWantsToQuit:1;
        unsigned int userWantsToClosePrefsPanel:1;
        unsigned int userWantsToChangeSelection:1;
        unsigned int userWantsToCreateNewAccount:1;
        unsigned int userWantsToOpenNewAccountAssistant:1;
    } _flags;
    NSIndexSet *_selectedRows;
    NSString *_selectedToolbarIdentifier;
    BOOL _ignoreTableViewSelectionCallbacks;
    BOOL _registeredForNotifications;
    BOOL _lastPopupSelectionWasITools;
    NSMutableDictionary *_userEnteredInfo;
    NSTextView *accountSupportURLField;
}

+ (void)addAccountType:(id)fp8 class:(Class)fp12;
+ (void)addISPAccountTypes:(id)fp8;
+ (void)initialize;
+ (void)configureAccountTypePopUp:(id)fp8;
+ (void)selectAccoutType:(Class)fp8 inTypePopup:(id)fp12;
+ (Class)accountClassOfSelectedItemInAccountTypePopup:(id)fp8;
+ (id)ispAccountInfoOfSelectedItemInAccountTypePopup:(id)fp8;
- (id)titleForIdentifier:(id)fp8;
- (id)windowTitle;
- (void)dealloc;
- (void)awakeFromNib;
- (void)accountsDidChange:(id)fp8;
- (void)initializeFromDefaults;
- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8;
- (void)moduleWasInstalled;
- (BOOL)moduleCanBeRemoved;
- (BOOL)preferencesWindowShouldClose;
- (void)_saveAccountInfo;
- (void)toggleAccountEnabled:(id)fp8;
- (void)toggleIncludeWhenCheckingForNewMail:(id)fp8;
- (BOOL)validateMenuItem:(id)fp8;
- (void)createNewAccount:(id)fp8;
- (void)_removeAccountBeingCreated;
- (void)editAccount:(id)fp8;
- (void)editMailAccount:(id)fp8;
- (void)removeAccountSheetDidEnd:(id)fp8 returnCode:(int)fp12 account:(id)fp16;
- (void)removeAccount:(id)fp8;
- (BOOL)isAccountInformationDirty;
- (void)_handleRequestToSwitchAwayFromSelectedAccountWithResponse:(BOOL)fp8;
- (BOOL)saveAccountSheetDidEnd:(id)fp8 returnCode:(int)fp12 context:(void *)fp16;
- (BOOL)allowSwitchingAwayFromSelectedAccount;
- (void)setUIElementsEnabled:(BOOL)fp8;
- (void)_clearAccountUI;
- (void)_reloadDeliveryAccountPopup:(id)fp8;
- (id)accountTypeNameForAccount:(id)fp8;
- (void)_setupUIForAccountBeingEdited;
- (void)_runAccountDetailPanelForAccount:(id)fp8;
- (void)saveAccountBeingEdited;
- (void)tabView:(id)fp8 didSelectTabViewItem:(id)fp12;
- (void)_setupAccountFromValuesInUI:(id)fp8 forValidation:(BOOL)fp12;
- (void)_updateAccountTypePopup;
- (BOOL)newSettingsAreValid;
- (void)accountTypePopupWillPopup:(id)fp8;
- (void)accountTypeChanged:(id)fp8;
- (id)_accountsCurrentlyUsingDeliveryAccount:(id)fp8;
- (void)changeDeliveryOptions:(id)fp8;
- (void)addDeliveryAccount:(id)fp8;
- (void)editAliases:(id)fp8;
- (void)smtpSettings:(id)fp8 sheetDidEndWithResponse:(int)fp12;
- (void)editDeliveryAccountList:(id)fp8;
- (void)sheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)removeDeliveryAccount:(id)fp8;
- (void)doneEditingDeliveryAccountList:(id)fp8;
- (int)numberOfRowsInTableView:(id)fp8;
- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (id)tableView:(id)fp8 toolTipForCell:(id)fp12 rect:(struct _NSRect *)fp16 tableColumn:(id)fp20 row:(int)fp24 mouseLocation:(struct _NSPoint)fp28;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (BOOL)selectionShouldChangeInTableView:(id)fp8;
- (void)tableViewSelectionDidChange:(id)fp8;
- (BOOL)tableView:(id)fp8 writeRows:(id)fp12 toPasteboard:(id)fp16;
- (unsigned int)tableView:(id)fp8 validateDrop:(id)fp12 proposedRow:(int)fp16 proposedDropOperation:(int)fp20;
- (BOOL)tableView:(id)fp8 acceptDrop:(id)fp12 row:(int)fp16 dropOperation:(int)fp20;
- (void)controlTextDidChange:(id)fp8;
- (BOOL)dataWillBeSynced;
- (void)dataWasSynced;

@end

@interface MailApp (ApplescriptAccountPreferences)
- (void)_insertInAccounts:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInAccounts:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInAccounts:(id)fp8;
- (void)insertInIToolsAccounts:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInIToolsAccounts:(id)fp8;
- (void)insertInImapAccounts:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInImapAccounts:(id)fp8;
- (void)insertInPopAccounts:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInPopAccounts:(id)fp8;
- (void)removeFromAccountsAtIndex:(unsigned int)fp8;
- (id)deliveryAccounts;
@end

@interface IMAPAccountDetails : AccountDetails
{
    NSButton *_compactWhenClosing;
    NSPopUpButton *_messageCaching;
    NSTextField *_serverPathPrefix;
    NSButton *_overaggressiveCaching;
    BOOL warnedAboutCachingAndIndexing;
    NSButton *_keepDraftsOnServer;
    NSButton *_keepSentMessagesOnServer;
    NSButton *_keepTrashOnServer;
    NSButton *_keepJunkOnServer;
}

- (Class)accountClass;
- (void)setupUIFromValuesInAccount:(id)fp8;
- (void)setupAccountFromValuesInUI:(id)fp8 forValidation:(BOOL)fp12;
- (void)setUIElementsEnabled:(BOOL)fp8;
- (BOOL)isAccountInformationDirty:(id)fp8;
- (void)didDisplayTabViewItem:(id)fp8;
- (void)_confirmCacheChangeSheetEnded:(id)fp8 alertReturn:(int)fp12 context:(void *)fp16;
- (void)cachePolicyChanged:(id)fp8;

@end

@interface AccountDetails : NSObject
{
    NSView *_detailView;
    NSButton *_enableAccountCheckbox;
    NSTextField *_directory;
    NSButton *_chooseDirectoryButton;
    NSTextField *_portNumberField;
    NSButton *_autoFetch;
    NSButton *_sslSwitch;
    NSPopUpButton *_authenticationPopup;
    NSTextField *_domainLabel;
    NSTextField *_domainField;
    SpecialMailboxes *_specialMailboxes;
    MailAccount *_account;
    AuthScheme *_authScheme;
}

+ (id)accountDetailsForAccountClass:(Class)fp8;
+ (id)accountDetailsNibName;
- (id)init;
- (void)dealloc;
- (Class)accountClass;
- (void)setupAccountFromValuesInUI:(id)fp8 forValidation:(BOOL)fp12;
- (void)_updateDomainUI;
- (void)setupUIFromValuesInAccount:(id)fp8;
- (void)setUIElementsEnabled:(BOOL)fp8;
- (id)detailView;
- (void)setupAccountFromValuesInSpecialMailboxesUI:(id)fp8;
- (BOOL)isAccountInformationDirty:(id)fp8;
- (id)setupSpecialMailboxesUIFromValuesInAccount:(id)fp8;
- (void)didDisplayTabViewItem:(id)fp8;
- (void)openAccountPathDialog:(id)fp8;
- (void)accountPathDialogDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (id)accountPath;
- (void)setAccountPath:(id)fp8;
- (BOOL)userWantsAccountActive;
- (void)sslChanged:(id)fp8;
- (void)authenticationChanged:(id)fp8;
- (void)_specialMailboxesDidChange:(id)fp8;

@end

@interface POPAccountDetails : AccountDetails
{
    NSButton *_deleteMessagesOnServer;
    NSTextField *_bigMessageWarningSize;
    NSButton *_removeSeenMessagesButton;
    NSPopUpButton *_removeIntervalPopup;
    ActivityMonitor *_deleteMessagesMonitor;
    BOOL _deleteObserverActive;
}

- (id)init;
- (Class)accountClass;
- (void)setupUIFromValuesInAccount:(id)fp8;
- (void)setUIElementsEnabled:(BOOL)fp8;
- (int)_popDeletionPolicyFromUI;
- (void)setupAccountFromValuesInUI:(id)fp8 forValidation:(BOOL)fp12;
- (BOOL)isAccountInformationDirty:(id)fp8;
- (void)_confirmDeleteSheetDidEnd:(id)fp8 returnValue:(int)fp12 sender:(id)fp16;
- (void)warnIfDeleteMessages:(id)fp8;
- (void)deleteSeenMessagesNow:(id)fp8;
- (void)deleteSeenMessagesSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)removeMessagesButtonClicked:(id)fp8;
- (void)_deleteServerMessagesCompleted:(id)fp8;
- (void)_deleteServerMessagesStarted:(id)fp8;

@end

@interface SignatureBundle : MVMailBundle <SyncableDataOwner>
{
    NSMutableDictionary *_signatures;
    NSMutableArray *accounts;
    BOOL _isDirty;
    BOOL _isSavingSyncResults;
    NSMutableDictionary *_lastDefaultSignatures;
    int fileVersionNumber;
}

+ (void)initialize;
+ (id)allSignaturesAccount;
+ (id)_reallyOldSignaturesPath;
+ (id)_oldSignaturesPath;
+ (id)signaturesFolderPath;
+ (id)signaturesPlistPath;
- (id)init;
- (void)dealloc;
- (void)loadLastDefaultSignatures;
- (id)signatureAccounts;
- (BOOL)updateAccountList;
- (id)loadFromDictionary:(id)fp8;
- (BOOL)deleteSignaturesNotPresentInNewSignatures:(id)fp8;
- (id)signatures;
- (id)fixAccountIdsInPlist:(id)fp8;
- (unsigned int)numberOfSignatures;
- (id)signaturesForAccount:(id)fp8;
- (id)signatureAtIndex:(int)fp8 forAccount:(id)fp12;
- (id)signatureAtIndex:(int)fp8;
- (void)removeSignatureAtIndex:(int)fp8;
- (void)removeSignature:(id)fp8;
- (void)removeSignatureAtIndex:(int)fp8 forAccount:(id)fp12;
- (void)insertSignature:(id)fp8 atIndex:(int)fp12 forAccount:(id)fp16;
- (void)insertSignature:(id)fp8 atIndex:(int)fp12;
- (void)addSignature:(id)fp8;
- (void)signatureNameChanged:(id)fp8;
- (void)saveChangesToDisk;
- (id)dictionaryRepresentationIncludingSyncInformation:(BOOL)fp8;
- (void)setDefaultSignatureId:(id)fp8 forAccountId:(id)fp12;
- (void)setDefaultSignature:(id)fp8 forAccount:(id)fp12;
- (id)defaultSignatureForAccount:(id)fp8;
- (int)signatureSelectionMethodForAccount:(id)fp8;
- (void)setSignatureSelectionMethod:(int)fp8 forAccount:(id)fp12;
- (id)activeSignatureWithName:(id)fp8;
- (id)activeSignatureWithId:(id)fp8;
- (BOOL)showComposeAccessoryView:(char *)fp8;
- (BOOL)showComposeAccessoryView;
- (void)setShowsComposeAccessoryView:(BOOL)fp8;
- (void)unsetShowsComposeAccessoryView;
- (BOOL)placeSignatureAboveQuotedText;
- (void)setPlaceSignatureAboveQuotedText:(BOOL)fp8;
- (void)configurePopUpButton:(id)fp8 forAccount:(id)fp12 defaultSignature:(id)fp16 selectionMethod:(int)fp20 showAccount:(BOOL)fp24;
- (void)syncSignatures;
- (BOOL)dataWillBeSyncedVersion:(id *)fp8 data:(id *)fp12;
- (BOOL)dataWasSyncedVersion:(id)fp8 newData:(id)fp12 acceptedChanges:(id)fp16;

@end

@interface AllSignaturesAccount : NSObject
{
}

- (id)uniqueId;
- (id)displayName;

@end

@interface SignaturePreferences : NSPreferencesModule
{
    NSTableView *_signaturesTable;
    NSTableView *_accountsTable;
    NSPopUpButton *_selectPopup;
    ColorBackgroundView *_grayLine;
    ColorBackgroundView *_webViewBackground;
    EditingMessageWebView *_webView;
    EditingWebMessageController *_controller;
    NSButton *_textRichnessButton;
    NSTextField *_textRichnessMessageField;
    NSButton *_addButton;
    NSButton *_removeButton;
    NSButton *_placeSignatureAboveQuote;
    unsigned int _addingNewSignature:1;
    unsigned int _appIsTerminating:1;
    unsigned int _loadedInitialHTML:1;
    MailAccount *_selectedAccount;
    MailAccount *_allSignaturesAccount;
    NSString *defaultFontName;
    WebArchive *savedWebArchive;
    BOOL _currentSignatureHasChanges;
}

- (void)dealloc;
- (id)titleForIdentifier:(id)fp8;
- (id)windowTitle;
- (id)imageForPreferenceNamed:(id)fp8;
- (void)_validateButtonState;
- (void)defaultSignatureChanged:(id)fp8;
- (void)initializeFromDefaults;
- (void)setSelectedAccount:(id)fp8;
- (void)saveChanges;
- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8;
- (void)willBeDisplayed;
- (void)moduleWasInstalled;
- (BOOL)moduleCanBeRemoved;
- (void)moduleWillBeRemoved;
- (BOOL)preferencesWindowShouldClose;
- (void)registerForNotifications;
- (void)unregisterForNotifications;
- (void)accountsDidChange:(id)fp8;
- (void)awakeFromNib;
- (void)determineDefaultFontName;
- (void)defaultFontMayHaveChanged:(id)fp8;
- (void)createSignature:(id)fp8;
- (id)defaultSignatureContentForSelectedAccount;
- (BOOL)endEditingOfSignatureOkayToReload:(BOOL)fp8;
- (void)removeSignatureSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)deleteKey:(id)fp8;
- (void)removeSignature:(id)fp8;
- (BOOL)allowsRichText;
- (void)changeSignatureRichness:(id)fp8;
- (id)webView:(id)fp8 plainTextEquivalentForNode:(id)fp12;
- (BOOL)dataWillBeSynced;
- (void)dataWasSynced;
- (void)webViewDidChangeTypingStyle:(id)fp8;
- (void)webViewDidChange:(id)fp8;
- (void)_updatePopup;
- (BOOL)validateMenuItem:(id)fp8;
- (void)placeSignatureAboveQuotedText:(id)fp8;
- (BOOL)_validateValuesInUI;
- (void)_updateWebView;
- (void)webView:(id)fp8 didFinishLoadForFrame:(id)fp12;
- (BOOL)webView:(id)fp8 shouldInsertNode:(id)fp12 replacingDOMRange:(id)fp16 givenAction:(int)fp20;
- (id)webView:(id)fp8 shouldReplaceSelectionWithWebArchive:(id)fp12 givenAction:(int)fp16;
- (void)webView:(id)fp8 didFailLoadWithError:(id)fp12 forFrame:(id)fp16;
- (void)webView:(id)fp8 didFailProvisionalLoadWithError:(id)fp12 forFrame:(id)fp16;
- (id)webArchiveForEditedSignature;
- (void)displaySelectedSignatureDetails;
- (int)numberOfRowsInTableView:(id)fp8;
- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (id)truncatingAttributes;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)tableView:(id)fp8 setObjectValue:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (BOOL)control:(id)fp8 textView:(id)fp12 doCommandBySelector:(SEL)fp16;
- (BOOL)selectionShouldChangeInTableView:(id)fp8;
- (void)tableViewSelectionDidChange:(id)fp8;
- (BOOL)tableView:(id)fp8 writeRows:(id)fp12 toPasteboard:(id)fp16;
- (unsigned int)tableView:(id)fp8 validateDrop:(id)fp12 proposedRow:(int)fp16 proposedDropOperation:(int)fp20;
- (BOOL)tableView:(id)fp8 acceptDrop:(id)fp12 row:(int)fp16 dropOperation:(int)fp20;
- (float)splitView:(id)fp8 constrainMinCoordinate:(float)fp12 ofSubviewAt:(int)fp16;
- (float)splitView:(id)fp8 constrainMaxCoordinate:(float)fp12 ofSubviewAt:(int)fp16;
- (void)splitView:(id)fp8 resizeSubviewsWithOldSize:(struct _NSSize)fp12;

@end

@interface DeletingTableView : NSTableView
{
}

- (void)keyDown:(id)fp8;
- (void)_userSelectIndexesInRange:(struct _NSRange)fp8 toIndex:(int)fp16 byExtendingSelection:(BOOL)fp20 indexType:(int)fp24;

@end

@interface MailApp (ApplescriptSignaturePreferences)
- (id)signatures;
- (BOOL)chooseSignatureWhenComposing;
- (void)setChooseSignatureWhenComposing:(BOOL)fp8;
- (id)selectedSignature;
- (void)setSelectedSignature:(id)fp8;
@end

@interface MailSorterPreferences : NSPreferencesModule <SyncableDataInterestedParty>
{
    NSTableView *rulesTable;
    NSButton *createButton;
    NSButton *editButton;
    NSButton *duplicateButton;
    NSButton *removeButton;
    NSPanel *ruleDetailPanel;
    NSTextField *ruleNameField;
    NSMutableArray *_actionViews;
    NSMenu *_actionMenu;
    NSScrollView *_actionContainer;
    NSView *_soundActionView;
    NSView *_colorActionView;
    NSView *_transferActionView;
    NSView *_copyActionView;
    NSView *_autoReplyActionView;
    NSView *_autoForwardActionView;
    NSView *_autoRedirectActionView;
    NSView *_markDeletedActionView;
    NSView *_markAsReadActionView;
    NSView *_markAsFlaggedActionView;
    NSView *_stopEvaluatingRulesActionView;
    NSView *_runAppleScriptActionView;
    NSView *_notifyUserActionView;
    NSPopUpButton *colorPopup;
    NSPopUpButton *colorStylePopup;
    SoundPopUpButton *soundPopup;
    AddressTextField *_forwardRecipientsField;
    AddressTextField *_redirectRecipientsField;
    NSPanel *responseMessageTextPanel;
    NSTextView *responseMessageTextView;
    NSTextField *appleScriptPathField;
    OldCompletionController *completionController;
    CriteriaUIHelper *criteriaUIHelper;
    MailboxesChooser *destinationChooser;
    MailboxesChooser *copyDestinationChooser;
    BOOL colorPanelShouldBeHidden;
    int currentlySelectedRow;
    MessageRule *_ruleBeingValidated;
    MessageRule *_ruleBeingEdited;
    DraggingTextView *addressFieldEditor;
    BOOL isEditingHeader;
    BOOL isDuplicatingRule;
}

- (void)dealloc;
- (id)titleForIdentifier:(id)fp8;
- (id)windowTitle;
- (void)awakeFromNib;
- (id)windowWillReturnFieldEditor:(id)fp8 toObject:(id)fp12;
- (id)viewForPreferenceNamed:(id)fp8;
- (id)preferencesNibName;
- (id)imageForPreferenceNamed:(id)fp8;
- (BOOL)dataWillBeSynced;
- (void)dataWasSynced;
- (void)_validateButtonState;
- (void)initializeFromDefaults;
- (void)saveChanges;
- (void)createRule:(id)fp8;
- (void)duplicateRule:(id)fp8;
- (void)editRule:(id)fp8;
- (void)removeRuleSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)removeRule:(id)fp8;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)tableView:(id)fp8 setObjectValue:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (int)tableView:(id)fp8 highlightStyleForRow:(int)fp12 inRect:(struct _NSRect *)fp16 color:(id *)fp20;
- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (BOOL)tableView:(id)fp8 doCommandBySelector:(SEL)fp12;
- (BOOL)tableView:(id)fp8 writeRows:(id)fp12 toPasteboard:(id)fp16;
- (unsigned int)tableView:(id)fp8 validateDrop:(id)fp12 proposedRow:(int)fp16 proposedDropOperation:(int)fp20;
- (BOOL)tableView:(id)fp8 acceptDrop:(id)fp12 row:(int)fp16 dropOperation:(int)fp20;
- (void)tableViewSelectionDidChange:(id)fp8;
- (void)_setOtherColor:(id)fp8;
- (void)removeAction:(id)fp8;
- (id)_actionViewForTag:(int)fp8;
- (void)addActionForTag:(int)fp8 atIndex:(int)fp12;
- (void)_configureColorPopupForColorStyle:(int)fp8;
- (void)_configureActionsForRule:(id)fp8;
- (void)addressesNeedRedisplay:(id)fp8;
- (void)addAction:(id)fp8;
- (void)_validateActionMenuItem:(id)fp8 currentTag:(int)fp12;
- (void)runRuleDetailPanelForRule:(id)fp8 inWindow:(id)fp12;
- (void)_ruleDetailSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)applyRulesSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)okClicked:(id)fp8;
- (void)alertDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)cancelClicked:(id)fp8;
- (void)colorChanged:(id)fp8;
- (void)colorPicked:(id)fp8;
- (void)colorStyleChanged:(id)fp8;
- (void)setResponseMessageClicked:(id)fp8;
- (void)responseMessageOKClicked:(id)fp8;
- (void)responseMessageCancelClicked:(id)fp8;
- (void)flagsToApplyChanged:(id)fp8;
- (void)chooseAppleScriptPanelSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)chooseAppleScriptClicked:(id)fp8;
- (void)mailboxSelected:(id)fp8;
- (void)actionPopupWillPopup:(id)fp8;
- (void)actionPopupChanged:(id)fp8;
- (id)titleForSoundFile:(id)fp8;

@end

@interface MailApp (ApplescriptMailSorterPreferences)
- (id)rules;
- (void)insertInRules:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInRules:(id)fp8;
- (void)removeFromRulesAtIndex:(unsigned int)fp8;
@end

@interface _AutosizingClipView : NSClipView
{
}

- (void)viewFrameChanged:(id)fp8;

@end

@interface AutosizingScrollView : NSScrollView
{
    float _maxHeight;
    unsigned int _resizingContent:1;
    unsigned int _UNUSED:31;
}

+ (struct _NSSize)frameSizeForContentSize:(struct _NSSize)fp8 hasHorizontalScroller:(BOOL)fp16 hasVerticalScroller:(BOOL)fp20 borderType:(int)fp24;
+ (struct _NSSize)contentSizeForFrameSize:(struct _NSSize)fp8 hasHorizontalScroller:(BOOL)fp16 hasVerticalScroller:(BOOL)fp20 borderType:(int)fp24;
- (id)initWithFrame:(struct _NSRect)fp8;
- (void)drawRect:(struct _NSRect)fp8;
- (void)tile;
- (void)docViewFrameChanged;
- (void)setMaxHeight:(float)fp8;
- (float)maxHeight;
- (void)setTag:(int)fp8;
- (int)tag;

@end

@interface NSClipView (AutosizingScrollViewAdditions)
- (void)setAutomagicallyResizes:(BOOL)fp8;
@end

@interface AutosizingTextField : NSTextField
{
    float _minimumHeight;
}

- (void)_editorResized;
- (void)_adjustWidth:(float)fp8 ofEditor:(id)fp12;
- (void)_adjustWidthBy:(float)fp8;
- (void)setFrameSize:(struct _NSSize)fp8;
- (void)resizeWithOldSuperviewSize:(struct _NSSize)fp8;
- (void)sizeToFit;
- (void)_setupTextView:(id)fp8;
- (void)didAddSubview:(id)fp8;
- (void)willRemoveSubview:(id)fp8;
- (float)minimumHeight;
- (void)setMinimumHeight:(float)fp8;
- (void)dealloc;

@end

@interface FocusView : NSView
{
    struct _NSSize _inset;
    struct _NSSize _thickness;
    NSColor *_color;
    BOOL _alwaysVisible;
}

- (void)_setFocusNeedsDisplay;
- (void)setRepresentedView:(id)fp8;
- (void)dealloc;
- (void)removeFromSuperview;
- (id)initWithFrame:(struct _NSRect)fp8;
- (BOOL)isOpaque;
- (void)drawRect:(struct _NSRect)fp8;
- (void)setNeedsDisplayInRect:(struct _NSRect)fp8;
- (void)setInset:(struct _NSSize)fp8;
- (void)setThickness:(struct _NSSize)fp8;
- (void)setColor:(id)fp8;
- (void)setAlwaysVisible:(BOOL)fp8;
- (BOOL)isAlwaysVisible;
- (id)hitTest:(struct _NSPoint)fp8;

@end

@interface NSView (FocusViewSupport)
- (BOOL)hasFocusView;
- (id)focusView;
- (void)setHasFocusView:(BOOL)fp8;
@end

@interface DeliveryQueue : NSObject
{
    unsigned int _isBackgroundProcessingEnabled:1;
    unsigned int _resetDeliveryQueueWhenDoneWithCurrentMessage:1;
    MessageStore *_outboxStore;
    int _indexOfLastMessageToProcess;
    NSMutableDictionary *_errorResponses;
    NSMutableSet *_potentialAlternateDeliveryAccounts;
    NSMutableSet *_accountsOnHold;
    NSMutableDictionary *_alternateDeliveryAccounts;
    BOOL _queueIsActive;
    double _beginDeliveryTime;
}

+ (id)sharedDeliveryQueue;
- (id)init;
- (void)dealloc;
- (void)setBackgroundProcessingEnabled:(BOOL)fp8;
- (BOOL)isBackgroundProcessingEnabled;
- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8;
- (void)resetStateAndReprocessQueue;
- (void)resetStateAndReprocessQueueIfNecessary;
- (void)_resetStateAndReprocessQueueIfNecessary;
- (void)_closeOutboxStore;
- (void)processDeliveryQueueStartingAtIndex:(unsigned int)fp8;
- (int)_performDeliveryOfMessage:(id)fp8 usingAccount:(id)fp12 accountUsed:(id *)fp16;
- (BOOL)_isMessageBeingEdited:(id)fp8;
- (void)_deliverQueuedMessages:(unsigned int)fp8;
- (int)appendMessageToQueue:(id)fp8 replacingOriginalMessage:(id)fp12;
- (void)cancelDeliveryOfMessage:(id)fp8;
- (void)_networkConfigurationChanged:(id)fp8;
- (id)potentialAlternateDeliveryAccounts;
- (void)setAlternateDeliveryAccount:(id)fp8 forAccount:(id)fp12;
- (void)unfreezeDeliveryAccount:(id)fp8 reprocessQueue:(BOOL)fp12;
- (id)alternateDeliveryAccountForAccount:(id)fp8;
- (BOOL)deliveryQueueContainsMessage:(id)fp8;

@end

@interface TextComposeBackEnd (ScriptingSupport)
+ (id)_messageEditorForComposeBackEnd:(id)fp8 window:(id *)fp12;
- (BOOL)isVisible;
- (void)setIsVisible:(BOOL)fp8;
- (id)appleScriptSender;
- (void)setAppleScriptSender:(id)fp8;
- (id)appleScriptSubject;
- (void)setAppleScriptSubject:(id)fp8;
- (id)content;
- (void)setContent:(id)fp8;
- (id)messageSignature;
- (void)setMessageSignature:(id)fp8;
- (void)_addRecipientsForKey:(id)fp8 toArray:(id)fp12;
- (id)recipients;
- (id)toRecipients;
- (id)ccRecipients;
- (id)bccRecipients;
- (void)insertRecipient:(id)fp8 atIndex:(unsigned int)fp12 inHeaderWithKey:(id)fp16;
- (void)insertInToRecipients:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInToRecipients:(id)fp8;
- (void)insertInCcRecipients:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInCcRecipients:(id)fp8;
- (void)insertInBccRecipients:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInBccRecipients:(id)fp8;
- (void)removeFromToRecipientsAtIndex:(unsigned int)fp8;
- (void)removeFromCcRecipientsAtIndex:(unsigned int)fp8;
- (void)removeFromBccRecipientsAtIndex:(unsigned int)fp8;
- (void)replaceFormattedAddress:(id)fp8 withAddress:(id)fp12 forKey:(id)fp16;
- (id)handleSaveMessageCommand:(id)fp8;
- (id)handleSendMessageCommand:(id)fp8;
- (id)handleCloseScriptCommand:(id)fp8;
- (id)uniqueID;
- (id)objectSpecifier;
- (void)setHtmlContent:(id)fp8;
- (void)setVcardPath:(id)fp8;
@end

@interface MouseTrackingWindow : NSWindow
{
}

- (id)initWithContentRect:(struct _NSRect)fp8 styleMask:(unsigned int)fp24 backing:(int)fp28 defer:(BOOL)fp32;
- (void)displayIfNeeded;
- (BOOL)performKeyEquivalent:(id)fp8;

@end

@interface NSWindow (MailSwizzle)
- (void)changeToMouseTrackingWindow;
@end

@interface NSWindow (BetterDescription)
- (id)debugDescription;
@end

@interface FlippedView : NSView
{
}

- (BOOL)isFlipped;
- (BOOL)isOpaque;

@end

@interface ActivityViewer : NSObject
{
    id _docView;
    id _scrollView;
    id _window;
    NSMutableArray *entries;
    int _numActiveEntries;
    NSTimer *_updateTimer;
}

- (id)init;
- (void)dealloc;
- (void)initializeFromDefaults;
- (void)awakeFromNib;
- (void)_handleNewActivity:(id)fp8;
- (void)_updateAllEntries;
- (void)_addViewToViewerWindow:(id)fp8;
- (void)_appendEntry:(id)fp8;
- (void)removeEntry:(id)fp8;
- (void)_tileViews;
- (BOOL)hasBackgroundActivity;
- (int)countOfBackgroundActivities;
- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8;
- (BOOL)isActivityViewerVisible;
- (void)toggleActivityViewerVisible;
- (id)statusMessageForTarget:(id)fp8;
- (BOOL)windowShouldClose:(id)fp8;
- (struct _NSRect)windowWillUseStandardFrame:(id)fp8 defaultFrame:(struct _NSRect)fp12;

@end

@interface MailApp (ActivityViewerScripting)
- (int)backgroundThreadCount;
@end

@interface MailNotificationCenter : NSNotificationCenter
{
    struct _NSHashTable *_nameTable;
}

- (void)addObserver:(id)fp8 selector:(SEL)fp12 name:(id)fp16 object:(id)fp20;
- (void)addObserverInMainThread:(id)fp8 selector:(SEL)fp12 name:(id)fp16 object:(id)fp20;
- (void)postNotification:(id)fp8;
- (void)postNotificationName:(id)fp8 object:(id)fp12 userInfo:(id)fp16;
- (void)_postNotificationWithMangledName:(id)fp8 object:(id)fp12 userInfo:(id)fp16;
- (void)removeObserver:(id)fp8 name:(id)fp12 object:(id)fp16;

@end

@interface NSNotificationCenter (ToReplaceCenterWithOurOwn)
+ (id)allocWithZone:(struct _NSZone *)fp8;
@end

@interface Signature : NSObject <NSCopying>
{
    NSString *_uniqueId;
    NSString *_name;
    NSData *_webArchiveData;
    unsigned int _isRich:1;
    unsigned int _isSavedAsRich:1;
    unsigned int _readFromTextFile;
    unsigned int _isDirty:1;
}

+ (id)newUniqueId;
- (void)dealloc;
- (id)initWithName:(id)fp8;
- (id)initWithName:(id)fp8 uniqueId:(id)fp12;
- (id)initWithDictionary:(id)fp8;
- (BOOL)saveContentToDisk;
- (void)removeContentFromDisk;
- (id)dictionaryRepresentationIncludingWebArchiveData:(BOOL)fp8;
- (id)dictionaryRepresentation;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (id)uniqueId;
- (void)setName:(id)fp8;
- (id)name;
- (id)webArchive;
- (void)setWebArchive:(id)fp8;
- (id)attributedString;
- (id)textValue;
- (void)setTextValue:(id)fp8;
- (void)setIsRich:(BOOL)fp8;
- (BOOL)isRich;
- (BOOL)isEqual:(id)fp8;
- (unsigned int)hash;

@end

@interface MailApp (ApplescriptSignature)
- (void)insertInSignatures:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInSignatures:(id)fp8;
- (void)removeFromSignaturesAtIndex:(unsigned int)fp8;
@end

@interface Signature (Applescript)
- (id)signatureName;
- (void)setSignatureName:(id)fp8;
- (id)signatureContents;
- (id)objectSpecifier;
@end

@interface FontMenu : NSMenu
{
}

- (id)initWithTitle:(id)fp8 fixedPitchOnly:(BOOL)fp12;

@end

@interface iToolsAccountDetails : IMAPAccountDetails
{
}

+ (id)accountDetailsNibName;
- (Class)accountClass;
- (void)setupUIFromValuesInAccount:(id)fp8;

@end

@interface AttachmentManager : NSObject
{
    NSMutableArray *_openedAttachmentPaths;
    NSMutableDictionary *_openedAttachmentMessageIDs;
    NSMutableArray *_messageIDPurgeQueue;
    NSTimer *_purgeTimer;
    int _purgeBehavior;
}

+ (void)_registerDefaults;
+ (id)sharedInstance;
+ (id)openedAttachmentListPath;
+ (BOOL)attachmentPurgingIsEnabled;
- (int)attachmentPurgingBehavior;
- (id)init;
- (void)dealloc;
- (void)initializeAttachmentPurging;
- (void)enableAttachmentPurging;
- (void)disableAttachmentPurging;
- (void)setAttachmentPurgingBehavior:(int)fp8;
- (id)uniquedPathForFile:(id)fp8 inDirectory:(id)fp12;
- (void)beginLoadingInlineAttachmentsInView:(id)fp8;
- (void)cancelLoadingInlineAttachmentsInView:(id)fp8;
- (BOOL)dragAbortedBecauseOneOrMoreAttachmentsNotDownloaded:(id)fp8 inView:(id)fp12;
- (void)_confirmDownloadSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(struct SheetContext *)fp16;
- (BOOL)dragAttachments:(id)fp8 startPoint:(struct _NSPoint)fp12 view:(id)fp20 event:(id)fp24 image:(id)fp28 delegate:(id)fp32;
- (BOOL)gatekeeperApprovalForAttachments:(id)fp8 draggedFromView:(id)fp12 delegate:(id)fp16;
- (void)draggedAttachmentsWereGatekeeperApproved:(id)fp8;
- (id)pathsForDraggedAttachments:(id)fp8 fromView:(id)fp12;
- (void)_openFromDownloadedNotification:(id)fp8;
- (void)_downloadCompleted:(id)fp8;
- (void)openAttachments:(id)fp8 applicationURL:(struct __CFURL *)fp12 window:(id)fp16 delegate:(id)fp20;
- (void)openAttachmentsWithDictionary:(id)fp8;
- (id)_savePanelForFilename:(id)fp8 directory:(id)fp12;
- (void)saveAttachmentsFromMessages:(id)fp8 window:(id)fp12;
- (void)runSavePanelForAttachments:(id)fp8 window:(id)fp12 gatekeeperApproved:(BOOL)fp16;
- (void)runSavePanelForAttachments:(id)fp8 window:(id)fp12;
- (void)runSavePanelForAttachmentsFromDictionary:(id)fp8;
- (void)saveAttachmentsToDownloadDirectory:(id)fp8 window:(id)fp12 gatekeeperApproved:(BOOL)fp16;
- (void)saveAttachmentsToDownloadDirectory:(id)fp8 window:(id)fp12;
- (void)saveAttachmentsToDownloadDirectoryFromDictionary:(id)fp8;
- (BOOL)openTemporaryAttachments:(id)fp8 applicationBundle:(id)fp12 window:(id)fp16;
- (BOOL)openInvitationAttachments:(id)fp8 openImmediately:(BOOL)fp12;
- (void)chooseApplicationToOpenAttachments:(id)fp8 needsSave:(BOOL)fp12 window:(id)fp16 delegate:(id)fp20;
- (void)prepareAttributedString:(id)fp8 forPrinter:(id)fp12;
- (void)_confirmExecutableSheetDidEnd:(id)fp8 alertReturn:(int)fp12 context:(id)fp16;
- (BOOL)openFileURL:(id)fp8 stayInBackground:(BOOL)fp12 window:(id)fp16;
- (BOOL)openFileAtPath:(id)fp8 withApplication:(id)fp12 stayInBackground:(BOOL)fp16;
- (void)configureOpenWithMenu:(id)fp8 forAttachments:(id)fp12;
- (id)contextualMenuForAttachments:(id)fp8 forEditing:(BOOL)fp12;
- (void)saveAttachments:(id)fp8 toDirectory:(id)fp12 makePathsUnique:(BOOL)fp16 window:(id)fp20 gatekeeperApproved:(BOOL)fp24;
- (void)saveAttachments:(id)fp8 toDirectory:(id)fp12 makePathsUnique:(BOOL)fp16 window:(id)fp20;
- (void)saveAttachmentsToDirectoryMakePathsUniqueWindowFromDictionary:(id)fp8;
- (BOOL)gatekeeperApprovalForAttachments:(id)fp8 target:(id)fp12 didEndSelector:(SEL)fp16 userInfo:(id)fp20;
- (void)_gatekeeperApprovalDidEnd:(id)fp8;

@end

@interface AttachmentManager (DiskImageSupport)
- (void)_checkDiskImageFileAtPath:(id)fp8 privately:(BOOL)fp12 didEndSelector:(SEL)fp16 contextInfo:(id)fp20;
- (void)_reallyCheckDiskImageFileAtPath:(id)fp8 privately:(BOOL)fp12 didEndSelector:(SEL)fp16 contextInfo:(id)fp20;
@end

@interface AttachmentManager (Internal)
- (long)_openFullPath:(id)fp8 withAppURL:(struct __CFURL *)fp12 options:(unsigned int)fp16;
- (void)_openPathsForAttachmentsWithDictionary:(id)fp8;
- (void)_chooseApplicationSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(struct SheetContext *)fp16;
- (void)_immediatelySaveFileWrapper:(id)fp8 path:(id)fp12 window:(id)fp16;
- (void)_saveAttachment:(id)fp8 path:(id)fp12 window:(id)fp16;
- (id)_saveAttachments:(id)fp8 toDirectory:(id)fp12 makePathsUnique:(BOOL)fp16;
- (id)_saveAttachments:(id)fp8 toDirectory:(id)fp12;
- (void)_saveAttachmentsFromMessages:(id)fp8 toDirectory:(id)fp12;
- (void)_savePanelSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(struct SheetContext *)fp16;
- (void)_reportCantOpenSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(struct SheetContext *)fp16;
- (BOOL)_sameAttachmentAsBefore:(id)fp8 path:(id)fp12;
- (BOOL)_immediatelyOpenAttachment:(id)fp8 path:(id)fp12 desiredPath:(id)fp16 window:(id)fp20 application:(struct __CFURL *)fp24 reason:(int)fp28 gatekeeperApproved:(BOOL)fp32 exists:(BOOL)fp36;
- (BOOL)_immediatelyOpenAttachment:(id)fp8 path:(id)fp12 window:(id)fp16 application:(struct __CFURL *)fp20 reason:(int)fp24;
- (void)_immediatelyOpenAttachmentWithDictionary:(id)fp8;
- (void)_setupOpenedAttachmentsMessageIDMap;
- (void)_addOrReplaceEntry:(id)fp8 inAttachmentList:(id)fp12;
- (void)_addPurgeEntryForAttachmentAtPath:(id)fp8 modDate:(id)fp12 messageID:(id)fp16;
- (void)_scheduleAttachmentListSave;
- (void)_saveOpenedAttachmentsList;
- (BOOL)_allMessagesWithMessageIDAreDeletedOrTrashed:(id)fp8;
- (void)_synchronouslyPurgeAttachments;
- (void)_reallyPurgeAttachments;
- (void)_purgeAttachments:(id)fp8;
- (void)_purgeMessageIDs;
- (void)_scheduleMessageIDPurge;
- (void)_schedulePurgeOfMessageIDs:(id)fp8;
- (void)_messageDeleted:(id)fp8;
- (void)_handleMessageDeleted:(id)fp8;
- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8;
- (BOOL)_immediatelyOpenAttachment:(id)fp8 withApplicationURL:(struct __CFURL *)fp12 window:(id)fp16 attachmentDirectory:(id)fp20 reason:(int)fp24;
- (id)_pathForSavedFileWrapper:(id)fp8 directory:(id)fp12 makePathUnique:(BOOL)fp16;
- (void)_noteFileSystemChanged:(id)fp8;
- (void)_logGatekeeperInputDictionary:(id)fp8;
- (BOOL)quarantineIsGatekeeperApproved:(id)fp8 downloadController:(id *)fp12;
- (void)_checkArchiveWrapper:(id)fp8 contextInfo:(id)fp12;
- (void)_archiveCheckDidEnd:(id)fp8;
- (BOOL)runGatekeeperOnDictionary:(id)fp8;
- (void)_gatekeeperSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16;
- (void)_finishGatekeeperSheetWithContextDictionary:(id)fp8;
- (void)runGatekeeperOnAttachments:(id)fp8 window:(id)fp12 didEndSelector:(SEL)fp16 contextDictionary:(id)fp20;
- (void)_diskImageGatekeeperCheckDidEnd:(id)fp8;
- (id)writeToQuarantineFolderAttachment:(id)fp8 desiredPath:(id)fp12;
- (id)moveAttachment:(id)fp8 fromQuarantineAtPath:(id)fp12 toPath:(id)fp16;
@end

@interface MessageViewer (MessageViewerToolbar)
- (void)_setupToolBar;
- (BOOL)validateToolbarItem:(id)fp8 forSegment:(int)fp12;
- (id)toolbar:(id)fp8 itemForItemIdentifier:(id)fp12 willBeInsertedIntoToolbar:(BOOL)fp16;
- (void)setupSearchView:(BOOL)fp8;
- (void)_handleCancelSearchButton:(id)fp8;
- (id)toolbarDefaultItemIdentifiers:(id)fp8;
- (id)toolbarAllowedItemIdentifiers:(id)fp8;
- (void)_reallyUpdateToolbar:(BOOL)fp8;
- (void)_updateToolbarForResizing:(BOOL)fp8;
- (void)toolbarDidRemoveItem:(id)fp8;
- (void)toolbarWillAddItem:(id)fp8;
- (void)toolbarDidMoveItem:(id)fp8;
- (void)toolbarDidReplaceAllItems:(id)fp8;
- (void)_mailboxesViewFrameChanged;
- (void)_mailboxesViewDidEndLiveResize;
@end

@interface ColorBackgroundView (MessageViewerAdditions)
- (void)viewDidEndLiveResize;
@end

@interface MessageEditor (MessageEditorToolbar)
- (BOOL)validateToolbarItem:(id)fp8 forSegment:(int)fp12;
- (void)_setupToolBarOnWindow:(id)fp8 messageType:(int)fp12;
- (void)_synchronizeChangeReplyItem:(id)fp8 messageType:(int)fp12;
- (void)toggleReplytype:(int)fp8;
- (void)_updateSendButtonStateInToolbar;
- (void)toolbarWillAddItem:(id)fp8;
- (id)toolbar:(id)fp8 itemForItemIdentifier:(id)fp12 willBeInsertedIntoToolbar:(BOOL)fp16;
- (id)toolbarDefaultItemIdentifiers:(id)fp8;
- (id)toolbarAllowedItemIdentifiers:(id)fp8;
@end

@interface MessageTextStorage : NSConcreteTextStorage
{
    BOOL _isRichText;
    unsigned int _delegateRespondsToAttachmentsAdded:1;
    unsigned int _delegateRespondsToAttachmentsDeleteded:1;
    id _delegate;
}

- (id)defaultFont;
- (BOOL)isRichText;
- (void)setRichText:(BOOL)fp8;
- (void)fixParagraphStyleAttributeInRange:(struct _NSRange)fp8;
- (void)fixQuotingDisplayAttributesInRange:(struct _NSRange)fp8;
- (void)replaceCharactersInRange:(struct _NSRange)fp8 withAttributedString:(id)fp16;
- (void)replaceCharactersInRange:(struct _NSRange)fp8 withString:(id)fp16;
- (void)deleteCharactersInRange:(struct _NSRange)fp8;
- (void)setDelegate:(id)fp8;

@end

@interface NSToolbarItem (MailAdditions)
- (BOOL)menuHasBeenSet;
- (id)menuItemRep;
- (BOOL)isInPaletteView;
@end

@interface NSToolbar (MailAdditions)
- (id)itemWithTag:(int)fp8;
- (id)configureToolbarItems;
- (void)setMinWidthOfItem:(id)fp8 alternateTitle:(id)fp12;
- (id)toolbarView;
@end

@interface SearchTextField : NSSearchField
{
    struct {
        unsigned int dontDisplaySearchScope:1;
        unsigned int reserver:31;
    } _flags;
}

- (void)awakeFromNib;
- (BOOL)isDisplayingGraySearchScope;
- (void)displayGraySearchScopeIfAppropriate:(id)fp8;
- (void)removeGraySearchScope;
- (BOOL)becomeFirstResponder;
- (void)selectText:(id)fp8;
- (void)_cancelKey:(id)fp8;
- (unsigned int)draggingEntered:(id)fp8;
- (BOOL)performDragOperation:(id)fp8;

@end

@interface NSFont (MailAdditions)
+ (id)mailboxListFont;
+ (id)mailboxListFontName;
+ (void)setMailboxListFontName:(id)fp8;
+ (float)mailboxListFontSize;
+ (void)setMailboxListFontSize:(float)fp8;
+ (id)messageListFont;
+ (id)messageListFontName;
+ (void)setMessageListFontName:(id)fp8;
+ (float)messageListFontSize;
+ (void)setMessageListFontSize:(float)fp8;
+ (id)addressFieldFont;
+ (id)prefsAddressFieldFont;
+ (id)validFontName:(id)fp8 fixedPitchOnly:(BOOL)fp12;
@end

@interface SubjectFormatter : NSFormatter
{
}

- (id)stringForObjectValue:(id)fp8;
- (id)attributedStringForObjectValue:(id)fp8 withDefaultAttributes:(id)fp12;
- (id)editingStringForObjectValue:(id)fp8;
- (BOOL)getObjectValue:(id *)fp8 forString:(id)fp12 errorDescription:(id *)fp16;
- (BOOL)isPartialStringValid:(id)fp8 newEditingString:(id *)fp12 errorDescription:(id *)fp16;

@end

@interface ActivityViewEntry : NSObject
{
    NSBox *_box;
    NSProgressIndicator *_progressBar;
    NSTextField *_statusField;
    NSButton *_stopButton;
    NSTextField *_taskNameField;
    ActivityMonitor *_activity;
    int _lastChangeCount;
    ActivityViewer *_viewer;
}

- (id)initForViewer:(id)fp8;
- (void)dealloc;
- (void)awakeFromNib;
- (void)setMonitoredActivity:(id)fp8;
- (id)monitoredActivity;
- (void)update;
- (void)_handleActivityEnded;
- (void)stop:(id)fp8;
- (BOOL)inUse;
- (void)setupUI;
- (id)view;

@end

@interface MailboxesChooser : NSObject
{
    NSPopUpButton *popUpButton;
    MailboxUid *_selectedMailbox;
    MailboxUid *_targetMailboxForCycleChecks;
    BOOL includeSmartMailboxes;
    id _realTarget;
    SEL _realAction;
}

- (void)dealloc;
- (void)setShouldCheckCyclesToSmartMailbox:(id)fp8;
- (void)cellWillPopUp:(id)fp8;
- (void)disableCyclicItemsInMenu:(id)fp8;
- (void)disableCyclicMailboxesInItems:(id)fp8;
- (void)reset;
- (void)awakeFromNib;
- (void)_cancelMenuTracking:(id)fp8;
- (id)popUpButton;
- (void)setPopUpButton:(id)fp8;
- (void)_mailboxWasRenamed:(id)fp8;
- (void)_ensureSelectionIsValid:(id)fp8;
- (void)_popUpPressed:(id)fp8;
- (void)setSelectedMailbox:(id)fp8;
- (id)selectedMailbox;
- (void)setIncludesSmartMailboxes:(BOOL)fp8;

@end

@interface MouseTracker : NSObject
{
    NSView *_view;
    struct _NSRect _trackingRect;
    int _trackingRectTag;
    BOOL _mouseOver;
    id _delegate;
}

- (id)initWithTrackingRect:(struct _NSRect)fp8 inView:(id)fp24;
- (void)dealloc;
- (void)setDelegate:(id)fp8;
- (struct _NSRect)trackingRect;
- (id)view;
- (BOOL)mouseOver;
- (void)_updateMouseIsOver;
- (void)mouseEntered:(id)fp8;
- (void)mouseExited:(id)fp8;
- (void)mouseMoved:(id)fp8;

@end

@interface VisibleStateObject : NSObject
{
    struct visible_state vs;
    NSMutableDictionary *selectedMessageIDs;
    NSMutableArray *openThreadIDs;
}

- (void)dealloc;

@end

@interface TableViewManager (FilteredList_Management)
- (void)mallStructureWillChange:(id)fp8;
- (void)setMailboxUids:(id)fp8;
- (BOOL)_allMailboxes:(id)fp8 areOfTypes:(int *)fp12 typeCount:(unsigned int)fp16;
- (BOOL)allMailboxesAreOutgoing:(id)fp8;
- (BOOL)allMailboxes:(id)fp8 areOfType:(int)fp12;
- (BOOL)_criterionIsLastViewedDate:(id)fp8;
- (BOOL)mailboxIsViewingHistorySmartMailbox:(id)fp8;
- (BOOL)allMailboxesAreViewingHistorySmartMailboxes:(id)fp8;
- (void)storeStructureChanged:(id)fp8;
- (void)messagesCompacted:(id)fp8;
- (void)messageFlagsChanged:(id)fp8;
- (void)_scrollToHappyPlace;
- (void)_recordVisibleState:(struct visible_state *)fp8 deletedAreGoingAway:(BOOL)fp12 considerPinToEnd:(BOOL)fp16;
- (BOOL)_restoreVisibleState:(struct visible_state *)fp8 forceSelToVisible:(BOOL)fp12;
- (void)dumpVisibleState;
- (int)indexOfTopmostVisibleMessageMustBeSelected:(BOOL)fp8 okayIfDeleted:(BOOL)fp12;
- (int)indexOfLastReadMessage;
- (id)persistentVisibleStateCreateIfNecessary:(BOOL)fp8;
- (void)_saveScrollAndSelection:(BOOL)fp8;
- (void)saveScrollAndSelection;
- (BOOL)restoreScrollAndSelection;
- (void)_setScrollAndSelectionForThreadOpenedOrClosed:(id)fp8 flag:(BOOL)fp12 clickedRow:(int)fp16 rowToSelectInOpeningThread:(int)fp20;
- (id)selectedMessageIDs;
- (id)openThreadIDs;
- (void)setSelectedMessageIDs:(id)fp8 openThreadIDs:(id)fp12;
- (void)addRanks;
- (void)removeRanks;
- (void)clearSearch;
- (BOOL)isShowingSearchResults;
- (void)searchForString:(id)fp8 in:(int)fp12 withOptions:(int)fp16;
- (BOOL)isFocused;
- (void)setFocusedMessages:(id)fp8;
- (BOOL)isSortedByRank;
- (BOOL)isSortedByDateReceived;
- (BOOL)isSortedChronologically;
- (int)sortColumn;
- (void)setSortColumn:(int)fp8 ascending:(BOOL)fp12;
- (BOOL)isSortedAscending;
- (void)setIsSortedAscending:(BOOL)fp8;
- (int)state;
- (id)filteredMessages;
- (void)restoreLocationColumnIfAppropriate;
- (void)clearTrackingRects;
- (void)updateTrackingRects;
- (int)_indexOfMemberToSelectWhenOpeningThread:(id)fp8;
- (double)_getAnimationDuration:(int)fp8;
- (id)_createHiliteImage;
- (id)_createBackgroundImage;
- (id)_createSnapshotOfRect:(struct _NSRect)fp8 styleMask:(unsigned int)fp24 backing:(int)fp28 defer:(BOOL)fp32;
- (id)_createSnapshotOfRow:(int)fp8 styleMask:(unsigned int)fp12 backing:(int)fp16 defer:(BOOL)fp20;
- (BOOL)_isRowVisible:(int)fp8;
- (struct _NSSize)_calculateTruncationAmountUsingRowHeight:(float)fp8 collapseOrExpandAmount:(float)fp12 invisibleThreadAmountAbove:(float)fp16 invisibleThreadAmountBelow:(float)fp20;
- (void)_animateThreadCollapsing:(int)fp8 threadRow:(int)fp12 clickedRow:(int)fp16;
- (float)_animateThreadOpening:(id)fp8 threadMessageCount:(int)fp12 threadRow:(int)fp16 rowToBeSelected:(int)fp20;
- (void)searchFinished:(id)fp8;
- (void)tableView:(id)fp8 willMoveToWindow:(id)fp12;
- (void)tableViewDidMoveToWindow:(id)fp8;
- (BOOL)selectMessageWithIDIfExists:(id)fp8;
@end

@interface MVMailBundle : NSObject
{
}

+ (id)allBundles;
+ (id)composeAccessoryViewOwners;
+ (void)registerBundle;
+ (id)sharedInstance;
+ (BOOL)hasPreferencesPanel;
+ (id)preferencesOwnerClassName;
+ (id)preferencesPanelName;
+ (BOOL)hasComposeAccessoryViewOwner;
+ (id)composeAccessoryViewOwnerClassName;
- (void)dealloc;
- (void)_registerBundleForNotifications;

@end

@interface MVComposeAccessoryViewOwner : NSObject
{
    NSView *accessoryView;
}

+ (id)composeAccessoryViewOwner;
+ (id)composeAccessoryViewNibName;
- (id)init;
- (void)setupUIForMessage:(id)fp8;
- (id)composeAccessoryView;
- (BOOL)messageWillBeDelivered:(id)fp8;
- (BOOL)messageWillBeSaved:(id)fp8;

@end

@interface OldCompletionController : NSObject
{
    NSControl *_editingField;
    NSWindow *_editingWindow;
    NSString *_currentPartialString;
    NSString *_previousString;
    NSWindow *_completionWindow;
    NSTableView *_completionTableView;
    id _selectedRecord;
    NSString *_selectedAddress;
    NSString *_completedAddress;
    NSMutableArray *_matchingRecords;
    NSMutableArray *_matchingAddresses;
    NSMutableArray *_ldapMatches;
    ABLDAP_Manager *_ldapManager;
    NSTimer *_ldapTimer;
    NSProgressIndicator *progressIndicator;
    ActivityMonitor *completionMonitor;
    BOOL showListAsSoonAsPossible;
    BOOL ldapSearchIsComplete;
    BOOL ldapSearchIsPending;
    BOOL localSearchIsComplete;
    BOOL showingPartialLDAPSearchResults;
}

+ (void)initialize;
+ (void)_doCompletionWindowPlacement:(id)fp8;
- (id)init;
- (void)setProgressIndicatorVisible:(BOOL)fp8;
- (void)awakeFromNib;
- (void)_stopTimer;
- (void)_startTimer;
- (void)_disconnectAllLDAPConnections:(id)fp8;
- (void)userDidSelectText:(id)fp8;
- (void)_reset:(id)fp8;
- (id)selectedRecord;
- (id)completedAddress;
- (void)setCompletedAddress:(id)fp8;
- (void)textFieldDidAtomicizeAllAddresses:(id)fp8;
- (void)cancelAllCompletions;
- (void)cancelThisCompletion;
- (BOOL)_acceptCurrentCompletion;
- (void)selectTableViewRow:(id)fp8;
- (void)setEditingField:(id)fp8;
- (id)stringToComplete:(id)fp8;
- (void)_showSelectedLineInField;
- (void)_showSelectedLine;
- (void)_showCompletionListWindow:(unsigned int)fp8;
- (void)orderOutCompletionWindow:(id)fp8;
- (void)placementViewFrameChanged:(id)fp8;
- (void)_displayFilteredResultsShowList:(BOOL)fp8 showSelectedLine:(BOOL)fp12;
- (void)updateList:(id)fp8;
- (void)endUpdateList:(id)fp8;
- (void)appendLDAPResultsToMatchingRecords;
- (void)mergeLDAPMatchesIntoMatchingRecords;
- (void)completeStringUsingLDAP:(id)fp8;
- (void)completeString:(id)fp8;
- (void)addressBookSearchCompleted:(id)fp8;
- (void)forceListToPopup;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (BOOL)control:(id)fp8 textShouldEndEditing:(id)fp12;
- (void)controlTextDidChange:(id)fp8;
- (BOOL)shouldChangeTextInRange:(struct _NSRange)fp8 replacementString:(id)fp16;
- (void)tableViewSelectionDidChange:(id)fp8;
- (BOOL)control:(id)fp8 textView:(id)fp12 doCommandBySelector:(SEL)fp16;
- (BOOL)control:(id)fp8 textShouldBeginEditing:(id)fp12;
- (void)dealloc;

@end

@interface AttachmentLoader : NSObject
{
    MessageStore *_store;
    ActivityMonitor *_monitor;
    NSMutableArray *_entries;
}

+ (id)loaderForAttachment:(id)fp8 window:(id)fp12 reason:(int)fp16 application:(id)fp20 attachmentDirectory:(id)fp24;
+ (id)loaderForSavingAttachment:(id)fp8 window:(id)fp12 path:(id)fp16;
+ (void)startLoadingInlineAttachments:(id)fp8 window:(id)fp12 delegate:(id)fp16;
+ (void)cancelInlineLoads:(id)fp8 window:(id)fp12;
- (void)dealloc;

@end

@interface _AttachmentQueueEntry : NSObject
{
    NSWindow *window;
    NSTextAttachment *attachment;
    int reason;
    NSString *attachDir;
    union {
        NSURL *applicationURL;
        NSString *savePath;
    } opSpecific;
}

+ (id)newWithWindow:(id)fp8 attachment:(id)fp12 reason:(int)fp16 opSpecific:(id)fp20 attachmentDirectory:(id)fp24;
- (BOOL)isEqual:(id)fp8;
- (void)dealloc;

@end

@interface AttachmentLoader (Internal)
+ (id)_loaderForStore:(id)fp8;
+ (id)_makeLoaderForStore:(id)fp8;
- (id)init;
- (void)_cancelInlineLoadsForWindow:(id)fp8;
- (void)_didFetchFileWrapper:(id)fp8 forQueueEntry:(id)fp12;
- (void)_processAttachmentQueue;
- (void)_setMonitor:(id)fp8;
- (void)_monitorQuit;
- (void)_mailboxBecameInvalid;
- (void)_setStore:(id)fp8;
- (void)_startBackgroundThreadIfNeeded;
- (void)_addAttachmentsToFetch:(id)fp8 fromWindow:(id)fp12 delegate:(id)fp16;
- (BOOL)_addOrReprioritizeEntryEqualTo:(id)fp8;
@end

@interface AddressCommentCommand : NSScriptCommand
{
}

- (id)_getAddressCommentForObject:(id)fp8;
- (id)executeCommand;
- (id)performDefaultImplementation;

@end

@interface UncommentedAddressCommand : NSScriptCommand
{
}

- (id)_getUncommentedAddressForObject:(id)fp8;
- (id)executeCommand;
- (id)performDefaultImplementation;

@end

@interface MailToCommand : NSScriptCommand
{
}

- (id)performDefaultImplementation;

@end

@interface MailApp : NSApplication <SyncableApp>
{
    id selectionOwner;
    NSMenu *_mailboxesContextMenu;
    NSMenu *_messageViewerContextMenu;
    NSMenu *_composeAttachmentContextMenu;
    NSMenu *_viewAttachmentContextMenu;
    NSMenuItem *textEncodingMenuItem;
    MailboxesController *mailboxesController;
    NSString *_noMailSoundPath;
    NSString *_fetchErrorSoundPath;
    NSImage *unbadgedApplicationImage;
    NSPanel *_selectMailboxPanel;
    MailboxesChooser *_selectMailboxChooser;
    DeliveryQueue *_deliveryQueue;
    ActivityViewer *_activityViewer;
    NSMutableArray *_terminationHandlers;
    unsigned int _autoLaunchHidden:1;
    unsigned int _shouldPlayNoMailSound:1;
    unsigned int _shouldPlayFetchErrorSound:1;
    unsigned int _appHasFinishedLaunching:1;
    unsigned int _synchronizingAllAccounts:1;
    unsigned int _groupingByThreadDefaultsToOn:1;
    unsigned int _updateEmailAliasesOnNextActivation:1;
    unsigned int _terminateReply:4;
    unsigned int _currentHandlerIndex:24;
    NSMutableSet *_accountsCurrentlySynchronizing;
    int numberOfAccountsEmptyingTrash;
    int currentPasswordPanelCount;
    NSMutableDictionary *_composeMessages;
    id _syncer;
    BOOL accountsAreNew;
    BOOL useAddressAtoms;
    BOOL runningEmptyTrashSheet;
}

+ (void)_forceClassInitialization;
- (id)init;
- (void)awakeFromNib;
- (void)sendEvent:(id)fp8;
- (void)presencePreferenceChanged:(id)fp8;
- (void)setAppImageForUnreadCount:(int)fp8;
- (void)_unreadCountChanged:(id)fp8;
- (void)_accountInfoDidChange:(id)fp8;
- (BOOL)showViewerWindow:(id)fp8;
- (BOOL)applicationOpenUntitledFile:(id)fp8;
- (void)configurePerformanceLoggingDefaults;
- (void)_systemTimeChanged;
- (void)_midnightPassed;
- (void)_setupMidnightTimer;
- (void)_checkTimerAndFireDate:(id)fp8;
- (void)checkTimersAfterSleeping;
- (void)_setupMenus;
- (void)_updateEmailAliases;
- (void)performDelayedInitialization;
- (void)_synchronouslyTellSyncServicesToRegisterAndSync;
- (void)applicationDidFinishLaunching:(id)fp8;
- (void)reallyFinishLaunching;
- (BOOL)accountsAreNew;
- (void)_restoreMessagesFromDefaults;
- (void)_setupInitialState;
- (int)_loadBundlesFromPath:(id)fp8;
- (void)_loadBundles;
- (id)_mailboxBeingViewed;
- (id)_accountBeingViewed;
- (id)_selectedMailboxes;
- (BOOL)validateToolbarItem:(id)fp8 forSegment:(int)fp12;
- (BOOL)validateMenuItem:(id)fp8;
- (BOOL)moreThanOneAccountCanGoOffline;
- (void)disconnectAllAccounts:(id)fp8;
- (void)connectAllAccounts:(id)fp8;
- (void)connectThisAccount:(id)fp8;
- (void)disconnectThisAccount:(id)fp8;
- (void)disconnectAllAccountsFromContextMenu:(id)fp8;
- (void)connectAllAccountsFromContextMenu:(id)fp8;
- (void)connectThisAccountFromContextMenu:(id)fp8;
- (void)disconnectThisAccountFromContextMenu:(id)fp8;
- (void)connectAllAccountsFromToolbar:(id)fp8;
- (void)disconnectAllAccountsFromToolbar:(id)fp8;
- (void)toggleAccountOnlineStatus:(id)fp8;
- (void)performSynchronizationForAccounts:(id)fp8;
- (void)synchronizeAccount:(id)fp8;
- (void)_networkConfigurationChanged:(id)fp8;
- (void)handleNetworkConfigurationChange;
- (void)_emailAddressesApproved:(id)fp8;
- (void)_emailsRejected:(id)fp8;
- (void)showConnectionDoctor:(id)fp8;
- (void)showInfoPanel:(id)fp8;
- (void)showComposeWindow:(id)fp8;
- (void)newViewerWindow:(id)fp8;
- (void)selectMailbox:(id)fp8;
- (void)showAddressPanel:(id)fp8;
- (void)showAddressHistoryPanel:(id)fp8;
- (void)showSearchPanel:(id)fp8;
- (void)findNext:(id)fp8;
- (void)findPrevious:(id)fp8;
- (void)showActivityViewer:(id)fp8;
- (void)showPreferencesPanel:(id)fp8;
- (void)addAccount:(id)fp8;
- (void)importMailboxes:(id)fp8;
- (void)showReleaseNotes:(id)fp8;
- (void)showAccountInfo:(id)fp8;
- (void)alwaysSendWindowsFriendlyAttachments:(id)fp8;
- (void)sendWindowsFriendlyAttachments:(id)fp8;
- (void)insertOriginalAttachments:(id)fp8;
- (void)_resetMenuItemWithTag:(int)fp8;
- (id)_mailboxMenu;
- (id)_getMenuItemInMessageMenuWithTag:(int)fp8;
- (void)_getActiveAccountsThatCanGoOffline:(id)fp8 fetch:(id)fp12 sync:(id)fp16 deleteToTrash:(id)fp20 doesNotDeleteToTrash:(id)fp24;
- (void)_synchronizeAccountListMenuWithTagIfNeeded:(int)fp8;
- (void)bringUpOnlineOfflineMenu:(id)fp8;
- (void)bringUpSynchronizeAccountMenu:(id)fp8;
- (void)bringUpEmptyTrashMenu:(id)fp8;
- (void)bringUpGetNewMailMenu:(id)fp8;
- (void)_removeExtraSeparatorsInMailboxMenu;
- (void)_removeAllItemsInAccountMenuWithTag:(int)fp8;
- (void)_setupAccountMenuItems;
- (void)accountsChanged:(id)fp8;
- (void)editAccount:(id)fp8;
- (void)_confirmEmptyTrashSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)_emptyTrashInAccounts:(id)fp8;
- (void)emptyTrashInAccount:(id)fp8;
- (void)compactSelectedMailboxes:(id)fp8;
- (void)toggleSmallIconsInDrawer:(id)fp8;
- (void)showJunkMailInfoPanel;
- (void)showJunkMailInfoPanelIfNeeded;
- (void)_evaluateUsersJunkMailNeeds;
- (void)showToolbarItemForJunkMail:(BOOL)fp8;
- (void)eraseJunkMail:(id)fp8;
- (void)toggleThreadedMode:(id)fp8;
- (BOOL)groupingByThreadDefaultsToOn;
- (void)setGroupingByThreadDefaultsToOn:(BOOL)fp8;
- (BOOL)shouldAutoFetch;
- (void)setShouldAutoFetch:(BOOL)fp8;
- (int)autoFetchFrequency;
- (void)setAutoFetchFrequency:(int)fp8;
- (void)_checkNewMail:(BOOL)fp8;
- (void)doBackgroundFetch:(BOOL)fp8;
- (void)checkNewMailInAccount:(id)fp8;
- (void)checkNewMail:(id)fp8;
- (void)checkNewMailInSelectedAccount:(id)fp8;
- (void)autoFetchMail:(id)fp8;
- (id)_unreadMessagesInMailbox:(id)fp8;
- (void)_changeReadFlagForMessages:(id)fp8 flag:(BOOL)fp12;
- (void)markAllAsRead:(id)fp8;
- (void)backgroundFetchCompleted:(id)fp8;
- (void)resetAutoFetchTimer;
- (void)fetchErrorHasOccurred;
- (BOOL)application:(id)fp8 openFile:(id)fp12;
- (BOOL)handleOpenMessage:(id)fp8;
- (void)application:(id)fp8 openFiles:(id)fp12;
- (void)applicationDidUnhide:(id)fp8;
- (void)updateEmailAliasesOnNextActivation;
- (void)applicationDidBecomeActive:(id)fp8;
- (id)openStoreWithMailboxUid:(id)fp8;
- (id)openStoreWithMailboxUid:(id)fp8 andMakeKey:(BOOL)fp12;
- (id)_messageEditorWithAttributedString:(id)fp8;
- (void)addressManagerLoaded;
- (id)activityViewer;
- (id)textEncodingMenuItem;
- (id)mailboxesContextMenu;
- (id)messageViewerContextMenu;
- (id)viewAttachmentContextMenu;
- (id)composeAttachmentContextMenu;
- (BOOL)useAddressAtoms;
- (id)mailboxesController;
- (void)preferencesChanged:(id)fp8;
- (void)handleGURLAppleEvent:(id)fp8 replyEvent:(id)fp12;
- (void)handleMailWebPageEvent:(id)fp8 replyEvent:(id)fp12;
- (void)handleMailWebLinkEvent:(id)fp8 replyEvent:(id)fp12;
- (BOOL)handleMailToURL:(id)fp8;
- (BOOL)handleClickOnURL:(id)fp8 window:(id)fp12 dontSwitch:(BOOL)fp16;
- (id)applicationVersion;
- (id)frameworkVersion;
- (void)mailDocuments:(id)fp8;
- (id)messageEditor;
- (void)mailAttributedString:(id)fp8;
- (void)mailSelection:(id)fp8 userData:(id)fp12 error:(id *)fp16;
- (void)mailDocument:(id)fp8 userData:(id)fp12 error:(id *)fp16;
- (void)mailTo:(id)fp8 userData:(id)fp12 error:(id *)fp16;
- (id)deliveryQueue;
- (void)setSelectionFrom:(id)fp8;
- (void)resignSelectionFor:(id)fp8;
- (id)selection;
- (id)selectionOwner;
- (id)preferredReplyAddressBasedOnCurrentSelection;
- (BOOL)applicationShouldHandleReopen:(id)fp8 hasVisibleWindows:(BOOL)fp12;
- (id)mailSyncBundle;
- (id)syncer;
- (id)syncerForDataType:(int)fp8;
- (id)interestedPartiesForDataType:(int)fp8;
- (BOOL)tellInterestedPartiesDataWillBeSyncedForDataType:(int)fp8;
- (void)tellInterestedPartiesDataWasSyncedForDataType:(int)fp8;
- (id)ownerForDataType:(int)fp8;
- (void)client:(id)fp8 mightWantToSyncEntityNames:(id)fp12;
- (void)syncAllDataTypesIfNeeded;
- (BOOL)syncAllDataTypes;
- (void)quitNoMatterWhat;
- (void)terminateNoConfirm;
- (void)_approveQuitIfFinished;
- (void)_cleanupFinished;
- (void)cleanUpAccount:(id)fp8;
- (void)_cleanOldDatabases:(id)fp8;
- (int)applicationShouldTerminate:(id)fp8;
- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8;
- (void)applicationWillTerminate:(id)fp8;
- (void)addTerminationHandler:(id)fp8;
- (void)removeTerminationHandler:(id)fp8;
- (void)handler:(id)fp8 approvedQuit:(BOOL)fp12;

@end

@interface MailApp (AppleScript)
- (void)_runTestNamed:(id)fp8 iteration:(unsigned int)fp12;
- (void)application:(id)fp8 runTest:(unsigned int)fp12 duration:(double)fp16;
- (void)openSelectedFolder:(id)fp8;
- (id)indicesOfObjectsByEvaluatingObjectSpecifier:(id)fp8;
- (id)applescriptSelection;
- (id)accounts;
- (id)_accountsOfClass:(Class)fp8;
- (id)popAccounts;
- (id)imapAccounts;
- (id)iToolsAccounts;
- (void)insertInDeliveryAccounts:(id)fp8 atIndex:(int)fp12;
- (void)insertInDeliveryAccounts:(id)fp8;
- (void)removeFromDeliveryAccountsAtIndex:(unsigned int)fp8;
- (id)messageViewers;
- (id)valueInMessageViewersWithUniqueID:(id)fp8;
- (void)insertInMessageViewers:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInMessageViewers:(id)fp8;
- (void)removeFromMessageViewersAtIndex:(unsigned int)fp8;
- (id)inbox;
- (id)outbox;
- (id)draftsMailbox;
- (id)sentMailbox;
- (id)trashMailbox;
- (id)junkMailbox;
- (id)mailboxes;
- (id)valueInMailboxesWithName:(id)fp8;
- (void)removeFromMailboxesAtIndex:(unsigned int)fp8;
- (void)insertInMailboxes:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInMailboxes:(id)fp8;
- (void)replaceInMailboxes:(id)fp8 atIndex:(unsigned int)fp12;
- (id)messageEditors;
- (void)insertInMessageEditors:(id)fp8 atIndex:(unsigned int)fp12;
- (void)removeFromMessageEditorsAtIndex:(unsigned int)fp8;
- (void)_insertInComposeMessagesIfAbsent:(id)fp8;
- (id)composeMessages;
- (void)insertInComposeMessages:(id)fp8 atIndex:(unsigned int)fp12;
- (void)insertInComposeMessages:(id)fp8;
- (void)removeFromComposeMessagesAtIndex:(unsigned int)fp8;
- (void)removeFromComposeMessages:(id)fp8;
- (id)valueInComposeMessagesWithUniqueID:(id)fp8;
- (id)_objectSpecifierForObject:(id)fp8 inArray:(id)fp12 withKey:(id)fp16;
- (id)uniqueIDForComposeMessage:(id)fp8;
- (id)objectSpecifierForComposeMessage:(id)fp8;
- (id)objectSpecifierForMessageEditor:(id)fp8;
- (BOOL)useKeychain;
- (void)setUseKeychain:(BOOL)fp8;
- (BOOL)logAllSocketActivity;
- (void)setLogAllSocketActivity:(BOOL)fp8;
- (id)logActivityOnPorts;
- (void)setLogActivityOnPorts:(id)fp8;
- (id)logActivityOnHosts;
- (void)setLogActivityOnHosts:(id)fp8;
- (id)logMessages;
- (id)memoryStatistics;
- (id)userEmail;
- (id)handleCheckMailCommand:(id)fp8;
- (id)handleSynchronizeAccountCommand:(id)fp8;
- (id)handleImportMboxCommand:(id)fp8;
@end

@interface TextEncodingMenuDelegate : NSObject
{
    NSArray *_displayedCharsets;
}

- (void)dealloc;
- (id)displayedCharsets;
- (void)setDisplayedCharsets:(id)fp8;
- (void)menuNeedsUpdate:(id)fp8;
- (BOOL)menuHasKeyEquivalent:(id)fp8 forEvent:(id)fp12 target:(id *)fp16 action:(SEL *)fp20;

@end

@interface SMTPSettings : NSObject
{
    NSTextField *hostnameField;
    NSPopUpButton *authPopup;
    NSButton *sslSwitch;
    NSTextField *usernameField;
    NSSecureTextField *passwordField;
    NSTextField *portNumberField;
    NSButton *okButton;
    NSTextField *domainLabel;
    NSTextField *domainField;
    DeliveryAccount *_account;
}

- (id)account;
- (void)setAccount:(id)fp8;
- (void)dealloc;
- (void)_updateAuthenticationUIAnimatingPanelResize:(BOOL)fp8;
- (void)runSheetRelativeToWindow:(id)fp8 didEndDelegate:(id)fp12;
- (void)sheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)authenticationChanged:(id)fp8;
- (void)dismissPanel:(id)fp8;
- (void)controlTextDidChange:(id)fp8;

@end

@interface Message (MailViewerAdditions)
- (void)handleOpenAppleEvent:(id)fp8;
- (id)handleReplyToMessage:(id)fp8;
- (id)handleForwardMessage:(id)fp8;
- (id)handleRedirectMessage:(id)fp8;
- (void)handleBounceMessage:(id)fp8;
@end

@interface MessageEditor (ScriptingAdditions)
- (id)objectSpecifier;
@end

@interface PasswordPanel : NSObject
{
    NSPanel *_passwordPanel;
    NSSecureTextField *_passwordField;
    NSTextField *_passwordMessage;
    NSTextField *_passwordTitle;
    NSButton *_rememberPassword;
}

+ (id)passwordPanel;
- (void)dealloc;
- (id)init;
- (void)setTitle:(id)fp8;
- (void)setMessage:(id)fp8;
- (id)message;
- (id)promptModallyForPassword;
- (void)setCanRememberPassword:(BOOL)fp8;
- (BOOL)canRememberPassword;
- (void)setRememberPassword:(BOOL)fp8;
- (BOOL)rememberPassword;
- (void)passwordPanelOK:(id)fp8;
- (void)passwordPanelCancel:(id)fp8;
- (BOOL)control:(id)fp8 textView:(id)fp12 doCommandBySelector:(SEL)fp16;

@end

@interface NSPopUpButton (MailAdditions)
- (void)_selectItemWithTagAndSynchronizeTitle:(int)fp8;
- (float)sizeToFitWidth;
@end

@interface MessageSaver : NSObject
{
    NSArray *_messages;
    NSSet *_stores;
    NSSavePanel *_savePanel;
    NSWindow *_window;
    NSString *_path;
    unsigned int _haveAttachments:1;
    unsigned int _hideExtension:1;
    unsigned int _includeAttachments:1;
    unsigned int _saveFormat:4;
    unsigned int _headerDetailLevel:4;
    NSPopUpButton *formatPopup;
    NSButton *includeAttachmentsSwitch;
}

+ (void)initialize;
+ (void)saveMessages:(id)fp8 headerDetailLevel:(int)fp12 preferredFormat:(int)fp16 window:(id)fp20;
- (void)dealloc;
- (void)setMessages:(id)fp8;
- (void)setHeaderDetailLevel:(int)fp8;
- (void)setSaveFormat:(int)fp8;
- (void)setWindow:(id)fp8;
- (void)savePanelDidEnd:(id)fp8 alertReturn:(int)fp12 context:(void *)fp16;
- (void)runSavePanel;
- (void)updateSavePanelUI;
- (void)saveMessages;
- (void)handleSaveError:(id)fp8;
- (void)changeFormat:(id)fp8;
- (void)changeIncludeAttachments:(id)fp8;
- (id)separator;

@end

@interface ColorBackgroundView : NSView
{
    int _tag;
    NSColor *_color;
}

- (void)dealloc;
- (int)tag;
- (void)setTag:(int)fp8;
- (id)backgroundColor;
- (void)setBackgroundColor:(id)fp8;
- (void)drawRect:(struct _NSRect)fp8;
- (BOOL)isOpaque;

@end

@interface LDAPServer : NSObject
{
    NSString *_searchBase;
    NSString *_serverAddress;
    NSNumber *_port;
    int _scope;
    NSString *_entryName;
    NSNumber *_enabled;
    NSString *_uid;
}

- (void)updateLDAPServers;
- (id)initWithDescription:(id)fp8 serverAddress:(id)fp12 searchBase:(id)fp16 enabled:(id)fp20 port:(int)fp24 scope:(int)fp28 uid:(id)fp32;
- (id)serverAddress;
- (void)setServerAddress:(id)fp8;
- (id)searchBase;
- (void)setSearchBase:(id)fp8;
- (id)entryName;
- (void)setEntryName:(id)fp8;
- (BOOL)oldIsActive;
- (void)setOldIsActive:(BOOL)fp8;
- (BOOL)enabled;
- (void)setEnabled:(BOOL)fp8;
- (id)uid;
- (id)port;
- (void)setPort:(id)fp8;
- (int)scope;
- (void)setScope:(int)fp8;
- (int)scopeForInt:(int)fp8;
- (int)intForScope:(int)fp8;
- (id)description;
- (id)objectSpecifier;
- (void)dealloc;

@end

@interface Account (MailUIExtras)
+ (BOOL)_existsAccountOfClass:(Class)fp8;
+ (BOOL)exchangeAccountExists;
+ (BOOL)iToolsAccountExists;
+ (BOOL)primaryiToolsAccountExists;
+ (id)mailAccountWithName:(id)fp8;
+ (id)mailAccountOfClass:(Class)fp8 withHostname:(id)fp12 username:(id)fp16;
+ (id)displayTypeString;
- (void)_addAuthScheme:(id)fp8 toPopUp:(id)fp12;
- (void)configureAuthenticationPopUp:(id)fp8;
- (void)configureAuthenticationPopUp:(id)fp8 withAuthSchemes:(id)fp12;
@end

@interface LastViewedDateCell : DateCell
{
}

- (void)setTimeIntervalSince1970:(double)fp8;
- (void)_generateLastDateStringForRect:(struct _NSRect)fp8;

@end

@interface DateCell : NSTextFieldCell
{
    NSFont *_lastFont;
    NSString *_lastDateString;
    NSMutableDictionary *_lastDateAttributes;
    double _absoluteTime;
    int _lastDayInterval;
    NSMutableParagraphStyle *_paragraphStyle;
    NSMutableString *_drawingString;
    NSMutableDictionary *_drawingAttributes;
    unsigned int _underlinesText:1;
    unsigned int _dateDetailLevel:15;
    float _lastWidth;
}

+ (void)initialize;
+ (void)resetDateFormats;
- (id)init;
- (void)dealloc;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (float)_widthOfStringWithTimeFormat:(id)fp8 withDatePrefix:(id)fp12;
- (float)_widthOfLongestDateStringWithLevel:(int)fp8 format:(id)fp12;
- (void)_saveWidthsToDefaults;
- (BOOL)_readWidthsFromDefaults;
- (void)_updateDateColumnDetailLevelWidths;
- (BOOL)_updateDateColumnDetailLevels;
- (float)minimumWidth;
- (struct _NSRect)drawingRectForBounds:(struct _NSRect)fp8;
- (void)_generateLastDateStringForRect:(struct _NSRect)fp8;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)setTimeIntervalSince1970:(double)fp8;
- (void)setObjectValue:(id)fp8;
- (void)setFont:(id)fp8;
- (void)setNeedsDisplay:(BOOL)fp8;
- (BOOL)underlinesText;
- (void)setUnderlinesText:(BOOL)fp8;
- (id)accessibilityAttributeValue:(id)fp8;

@end

@interface MessageTextView (RichTextConversion)
- (void)changeFont:(id)fp8;
- (void)underline:(id)fp8;
- (void)alignLeft:(id)fp8;
- (void)alignRight:(id)fp8;
- (void)alignCenter:(id)fp8;
- (void)alignJustified:(id)fp8;
- (void)changeColor:(id)fp8;
- (void)pasteFont:(id)fp8;
- (void)performOperation:(id)fp8;
@end

@interface LabelledTextAttachmentCell : NSTextAttachmentCell
{
    NSMutableAttributedString *_attrString;
    NSImage *_image;
    NSImage *_dimmedImage;
    NSColor *_highlightedColor;
    NSString *_label;
    unsigned int _linkState:2;
    unsigned int _isDisplayingLabel:1;
    float _maxWidth;
    NSView *containingView;
    struct _NSRect attachmentDrawingRect;
}

- (id)labelFont;
- (id)labelColor;
- (id)initWithTextAttachment:(id)fp8;
- (void)dealloc;
- (void)setLabel:(id)fp8;
- (id)label;
- (void)setImage:(id)fp8;
- (id)image;
- (void)setIsDisplayingLabel:(BOOL)fp8;
- (BOOL)isDisplayingLabel;
- (id)attributedString;
- (void)_makeString;
- (void)_discardDimmedImage;
- (id)dimmedImage;
- (void)setAttachment:(id)fp8;
- (void)setMaxWidth:(float)fp8;
- (struct _NSSize)cellSize;
- (struct _NSPoint)cellBaselineOffset;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24 characterIndex:(unsigned int)fp28;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (BOOL)wantsToTrackMouse;
- (BOOL)wantsToTrackMouseForEvent:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 atCharacterIndex:(unsigned int)fp32;
- (BOOL)trackMouse:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 atCharacterIndex:(unsigned int)fp32 untilMouseUp:(BOOL)fp36;
- (BOOL)trackLink:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 atCharacterIndex:(int)fp32;
- (void)resetCursorAndToolTipRect:(struct _NSRect)fp8 inView:(id)fp24;
- (int)linkState;
- (void)setLinkState:(int)fp8;
- (id)highlightedColor;
- (void)setHighlightedWithColor:(id)fp8;
- (struct _NSRect)_rectForImageInRect:(struct _NSRect)fp8;
- (struct _NSRect)_rectForLinkInRect:(struct _NSRect)fp8;
- (id)accessibilityAttributeValue:(id)fp8;
- (id)accessibilityAttributeNames;
- (id)accessibilityActionNames;
- (void)accessibilityPerformAction:(id)fp8;
- (void)showMenu;

@end

@interface ResizingTextAttachmentCell : NSTextAttachmentCell
{
}

- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface NSTextAttachmentCell (ForNeatAttachmentFeatures)
- (void)resetCursorAndToolTipRect:(struct _NSRect)fp8 inView:(id)fp24;
@end

@interface MailTextAttachment : MimeTextAttachment
{
    unsigned int _isPossibleToDisplayAttachmentInline:1;
    unsigned int _isPossibleToDisplayAttachmentAsView:1;
    unsigned int _isDisplayingAttachmentInline:1;
    unsigned int _isImageBeingResized:1;
    NSFileWrapper *_originalFileWrapper;
    NSImage *_originalImage;
    struct _NSSize _originalImageSize;
    struct _NSSize _maxImageSize;
    struct _NSSize _lastMaxImageSize;
}

+ (void)initialize;
- (id)initWithFileWrapper:(id)fp8;
- (void)dealloc;
- (id)initWithMimePart:(id)fp8 andFileWrapper:(id)fp12;
- (void)setIsPossibleToDisplayAttachmentInline:(BOOL)fp8;
- (BOOL)isPossibleToDisplayAttachmentInline;
- (BOOL)isDisplayingAttachmentInline;
- (void)setIsDisplayingAttachmentInline:(BOOL)fp8;
- (id)attachmentCell;
- (id)_getInlineImage;
- (void)_configureLabelForCell:(id)fp8;
- (id)toolTip;
- (BOOL)isScalable;
- (BOOL)isFullSize;
- (id)_originalImage;
- (struct _NSSize)_originalImageSize;
- (id)originalFileWrapper;
- (struct _NSSize)maxImageSize;
- (struct _NSSize)originalImageSize;
- (void)resizingStarted:(struct _NSSize)fp8;
- (void)resizingFinished:(id)fp8 imageSize:(struct _NSSize)fp12 fileExtension:(id)fp20 fileType:(unsigned long)fp24 maxImageSize:(struct _NSSize)fp28;

@end

@interface MailTextAttachment (CustomAttachmentViewManagement)
+ (void)registerViewingClass:(Class)fp8 forMimeTypes:(id)fp12;
@end

@interface NSAttributedString (MailTextAttachments)
- (id)attributedStringByRemovingPartialAttachmentsInRange:(struct _NSRange)fp8;
@end

@interface NSMutableAttributedString (MailTextAttachments)
- (void)convertToMailAttachmentsInRange:(struct _NSRange)fp8;
- (void)makeExportable;
@end

@interface ViewTextAttachmentCell : NSViewTextAttachmentCell
{
    NSView *_view;
    struct _NSSize _viewSize;
}

- (void)_viewFrameChanged;
- (void)_viewFrameChanged:(id)fp8;
- (id)initWithView:(id)fp8;
- (id)view;
- (id)viewWithFrame:(struct _NSRect)fp8 forView:(id)fp24 characterIndex:(unsigned int)fp28 layoutManager:(id)fp32;
- (struct _NSSize)cellSize;
- (void)releaseView:(id)fp8;
- (void)dealloc;

@end

@interface ConcreteMessageMall : MessageMall
{
    NSMutableArray *_selectedMailboxUids;
    NSMutableArray *_allStores;
    NSMutableDictionary *_allMessagesByStore;
    NSMutableDictionary *_allNonDeletedMessagesByStore;
    NSMutableSet *_allNonDeletedMessagesSet;
    NSMutableDictionary *_sortedMessagesByStore;
    NSMutableDictionary *_sortedNonDeletedMessagesByStore;
    NSMutableArray *_filteredMessages;
    NSMutableArray *_filteredThreads;
    NSMutableSet *_hiddenMessages;
    NSMutableSet *_undeletedMessages;
    NSMutableSet *_focusedMessages;
    NSMutableDictionary *_searchRanks;
    float _highestSearchRank;
    MessageCriterion *_activeSearchCriterion;
    NSMutableSet *_deletedSearchResults;
    NSMutableSet *_storesBeingOpened;
    NSString *_sortOrder;
    NSMutableDictionary *_messageThreadingDataByMessage;
    NSMutableDictionary *_messagesByMessageIDHeaderDigest;
    NSMutableDictionary *_messagesByInReplyToHeaderDigest;
    NSMutableDictionary *_messagesBySubject;
    NSMutableDictionary *_messagesByID;
    NSMutableSet *_searchMonitors;
    NSMutableArray *_sortedFilteredMessages;
}

- (void)dealloc;
- (id)init;

@end

@interface MessageMall : SafeObserver
{
    InvocationQueue *_filterTasks;
    InvocationQueue *_userTasks;
    unsigned int _sortedAscending:1;
    unsigned int _wantsToBeSortedAscending:1;
    unsigned int _includeDeleted:1;
    unsigned int _focused:1;
    unsigned int _showingSearchResults:1;
    unsigned int _searchTaskIsRunning:1;
    unsigned int _isInThreadedMode:1;
    unsigned int _wantsToBeInThreadedMode:1;
    unsigned int _postedSearchFinished:1;
    unsigned int _displayingToColumn:1;
    unsigned int _sortedFilteredMessagesIsValid:1;
    unsigned int _selectionIncludesSmartMailbox:1;
    int _activeSearchType;
    int _activeSearchTarget;
    unsigned int _currentSearchID;
    unsigned int _currentFilterSeriesID;
    NSString *_displayName;
}

+ (id)allocWithZone:(struct _NSZone *)fp8;
+ (id)allMessageMalls;
+ (void)registerMall:(id)fp8;
+ (void)deregisterMall:(id)fp8;
- (id)init;
- (id)willBeReleased;
- (void)dealloc;
- (BOOL)isOpened;
- (BOOL)filteredListIncludesAllMessages;
- (int)filteredMessagesCount;
- (id)filteredMessageAtIndex:(unsigned int)fp8;
- (id)filteredMessages;
- (void)setupRowDrawingInfo:(struct __CFDictionary *)fp8;
- (unsigned int)indexOfMessageByLibraryID:(id)fp8;
- (BOOL)selectionIncludesSmartMailbox;
- (BOOL)useLibraryIDNumbering;
- (id)sortedMessagesForStore:(id)fp8;
- (unsigned int)indexOfMessage:(id)fp8 inStore:(id)fp12 messages:(id)fp16;
- (unsigned int)indexOfMessage:(id)fp8;
- (id)numberForMessage:(id)fp8;
- (int)indexOfFilteredMessage:(id)fp8;
- (id)filteredThreads;
- (void)clearFilteredMessages;
- (BOOL)isFocused;
- (void)setFocusedMessages:(id)fp8;
- (void)_setFocusedMessages:(id)fp8;
- (BOOL)isShowingSearchResults;
- (int)currentSearchType;
- (int)currentSearchTarget;
- (void)setSortOrder:(id)fp8 ascending:(BOOL)fp12;
- (id)sortOrder;
- (void)sortMessages:(id)fp8;
- (BOOL)includeDeleted;
- (void)setIncludeDeleted:(BOOL)fp8;
- (BOOL)isSortedAscending;
- (BOOL)isSortedByDateReceived;
- (void *)sortFunctionForName:(id)fp8;
- (void *)sortFunction;
- (id)expandedMailboxes:(id)fp8;
- (void)setMailboxUids:(id)fp8;
- (void)_addNonDeletedMessagesInArray:(id)fp8 fromStore:(id)fp12;
- (id)_storeForMailbox:(id)fp8 fromStores:(id)fp12 cache:(id)fp16;
- (id)_storeForMailbox:(id)fp8 cache:(id)fp12;
- (void)_removeDeletedMessagesInArray:(id)fp8;
- (void)_removeMessagesInStores:(id)fp8 fromMessages:(id)fp12 storeCache:(id)fp16;
- (void)_rebuildNonDeletedMessagesForStoresOfMessagesInArray:(id)fp8;
- (void)_addStore:(id)fp8;
- (void)_filterInMessages:(id)fp8;
- (void)_filterInMessagesSynchronously:(id)fp8;
- (void)_filterOutMessages:(id)fp8 ignoreShowDeletedPreference:(BOOL)fp12;
- (BOOL)_filterOutMessagesSynchronously:(id)fp8;
- (void)_rebuildFromStores;
- (void)_resortUsingFunction:(void *)fp8;
- (void)_refilter;
- (void)_invertFilteredList;
- (id)_backgroundInvertFilteredList;
- (void)_gatherCountsFromStoresForTotalCount:(unsigned int *)fp8 totalSize:(unsigned int *)fp12 deletedCount:(unsigned int *)fp16 deletedSize:(unsigned int *)fp20;
- (void)totalCount:(unsigned int *)fp8 andSize:(unsigned int *)fp12;
- (void)deletedCount:(unsigned int *)fp8 andSize:(unsigned int *)fp12;
- (unsigned int)totalCount;
- (unsigned int)unreadCount;
- (void)hideMessages:(id)fp8;
- (void)unhideMessages:(id)fp8;
- (id)messagesToDeleteForMessages:(id)fp8;
- (void)deleteMessages:(id)fp8 allowMoveToTrash:(BOOL)fp12;
- (void)reallyDeleteMessages:(id)fp8 allowMoveToTrash:(BOOL)fp12 retainingStores:(id)fp16;
- (void)rebuildTableOfContentsAsynchronously;
- (void)structureDidChange;
- (void)structureDidChangeFromOpeningThread:(id)fp8 andSelectMessage:(id)fp12 animate:(BOOL)fp16;
- (void)structureDidChangeByClosingThread:(id)fp8 focusRow:(int)fp12 animate:(BOOL)fp16;
- (void)structureDidChangeWithChangedThreads:(id)fp8;
- (id)threadForMessageID:(id)fp8;
- (void)updateFilteredListForMessages:(id)fp8 flags:(id)fp12;
- (void)setFlag:(id)fp8 state:(BOOL)fp12 forMessages:(id)fp16;
- (id)setFlagsFromDictionary:(id)fp8 forMessages:(id)fp12;
- (void)setJunkMailLevel:(int)fp8 forMessages:(id)fp12 trainJunkMailDatabase:(BOOL)fp16;
- (void)setJunkMailLevel:(int)fp8 forMessages:(id)fp12;
- (BOOL)canCompact;
- (void)doCompact;
- (BOOL)canRebuild;
- (void)_updateDisplayName;
- (id)displayName;
- (id)criterionForString:(id)fp8 type:(int)fp12 scope:(int)fp16;
- (void)performLibrarySearchWithCriterion:(id)fp8 ID:(unsigned int)fp12;
- (id)threadSearchSequenceNumber;
- (BOOL)shouldCancel;
- (void)newMessagesAvailable:(id)fp8 ranks:(id)fp12;
- (void)newMessagesAvailable:(id)fp8;
- (void)filterInLibrarySearchResults:(id)fp8 ranks:(id)fp12 sequenceNumber:(id)fp16;
- (id)mailboxSearchCriterionForScope:(int)fp8;
- (id)textSearchCriterionForSearchType:(int)fp8 queryString:(id)fp12;
- (void)searchForCriterion:(id)fp8;
- (void)searchForString:(id)fp8 in:(int)fp12 withOptions:(int)fp16;
- (void)reallySearchWithCriterion:(id)fp8 ID:(unsigned int)fp12;
- (void)_searchFinished;
- (void)_cancelSearch;
- (BOOL)isSearching;
- (id)copySearchRankForMessage:(id)fp8;
- (void)_normalizeSearchRanks;
- (id)mailboxUid;
- (id)allMailboxUids;
- (id)selectedMailboxUids;
- (void)messageColorsNeedToBeReevaluated;
- (BOOL)isReadOnly;
- (id)stores;
- (int)compareByNumberMessage:(id)fp8 andMessage:(id)fp12 sortedAscending:(BOOL)fp16;
- (BOOL)deletedFlagForMessage:(id)fp8;
- (BOOL)_deletedFlagForMessage:(id)fp8 hiddenMessages:(id)fp12 undeletedMessages:(id)fp16;
- (BOOL)_shouldDisplayMessage:(id)fp8 hiddenMessages:(id)fp12 undeletedMessages:(id)fp16;
- (id)_messagesThatShouldBeDisplayed:(id)fp8 hiddenMessages:(id)fp12 undeletedMessages:(id)fp16;
- (void)_componentMessageFlagsChanged:(id)fp8;
- (void)_componentStoreDidOpen:(id)fp8;
- (void)_componentStoreStructureChanged:(id)fp8;
- (void)_accountsChanged:(id)fp8;
- (void)_componentStoreMessagesWereAdded:(id)fp8;
- (void)handleMessagesAdded:(id)fp8;
- (void)_componentStoreMessagesCompacted:(id)fp8;
- (void)_performFilterTask:(id)fp8 seriesID:(unsigned int)fp12;
- (void)_filterTaskCompleted:(id)fp8 seriesID:(unsigned int)fp12;
- (void)structureWillChangeFromOpeningThread:(id)fp8;
- (void)structureWillChangeFromClosingThread:(id)fp8 focusRow:(int)fp12 animate:(BOOL)fp16;
- (void)structureWillChange;
- (id)_backgroundResortUsingSortFunction:(void *)fp8;
- (void)_removeMembersOfOpenThreads:(id)fp8;
- (id)_insertMembersOfOpenThreads:(id)fp8 usingSortFunction:(void *)fp12 context:(struct _MessageSortingInformation)fp16;
- (id)_backgroundRefilterMessages:(id)fp8 stores:(id)fp12;
- (id)_backgroundMergeMessages:(id)fp8;
- (id)_backgroundSortNewFilteredMessages:(id)fp8;
- (void)_mergeMessages:(id)fp8 intoMessages:(id)fp12 newThreads:(id *)fp16 changedThreads:(id *)fp20 usingComparator:(void *)fp24;
- (id)_backgroundFilterOutMessages:(id)fp8 ignoreShowDeletedPreference:(BOOL)fp12;
- (BOOL)isInThreadedMode;
- (void)setIsInThreadedMode:(BOOL)fp8;
- (void)toggleThreadedMode;
- (BOOL)needThreadingInfo;
- (void)setDisplayingToColumn:(BOOL)fp8;
- (BOOL)needTo;
- (unsigned int)loadOptions;
- (id)_backgroundResetThreadInfoAndGroupByThread;
- (id)_backgroundGroupMessagesByThread;
- (id)_backgroundUngroupThreads;
- (void)openThreadAtIndex:(int)fp8 animate:(BOOL)fp12;
- (void)openThreadAtIndex:(int)fp8 andSelectMessage:(id)fp12 animate:(BOOL)fp16;
- (id)quietlyOpenThreadAtIndex:(unsigned int)fp8;
- (void)closeThreadAtIndex:(int)fp8 focusRow:(int)fp12 animate:(BOOL)fp16;
- (id)quietlyCloseThreadAtIndex:(unsigned int)fp8;
- (void)openThreadsWithIDs:(id)fp8;
- (void)openAllThreads;
- (void)closeAllThreads;
- (BOOL)loadFullThreadsForMessages:(id)fp8;
- (void)_setFilteredMessages:(id)fp8;
- (void)_setFilteredMessages:(id)fp8 changedMessages:(id)fp12 filteredThreads:(id)fp16 changedThreads:(id)fp20 changedFlags:(id)fp24 messagesFilteredIn:(id)fp28 messagesFilteredOut:(id)fp32 forSeriesID:(unsigned int)fp36;
- (void)routeMessages:(id)fp8 fromStores:(id)fp12;
- (void)_unlockedAddMessagesInSameThreadAsMessage:(id)fp8 toSetOrArray:(id)fp12;
- (void)addMessagesInSameThreadAsMessage:(id)fp8 toSet:(id)fp12;
- (id)repliesToMessage:(id)fp8;
- (id)parentOfMessage:(id)fp8;
- (BOOL)messageIsPartOfAThread:(id)fp8;
- (id)messageForMessageID:(id)fp8;
- (id)threadForMessage:(id)fp8;
- (id)threadAtIndex:(unsigned int)fp8;
- (id)filteredThreadForMessage:(id)fp8;
- (id)unfilteredThreadForMessage:(id)fp8;
- (id)filteredThreadsForMessages:(id)fp8;
- (void)_deduceThreadHierarchyForMessages:(id)fp8 firstTime:(BOOL)fp12;
- (void)_clearThreadInfo;
- (void)updateThreadingDictionaryForMessages:(id)fp8;
- (void)removeMessagesFromThreadingDictionary:(id)fp8;
- (void)_resetThreadInfoFromFilteredMessages;
- (void)_updateThreadInfoForMessages:(id)fp8;
- (int)_appendDescriptionOfDictionaryMemoryUsage:(id)fp8 named:(id)fp12 toString:(id)fp16;
- (id)memoryUsageDescription;

@end

@interface FilteredListInfo : NSObject
{
    NSMutableArray *filteredMessages;
    NSArray *changedMessages;
    NSMutableArray *filteredThreads;
    NSArray *changedThreads;
    NSDictionary *changedFlags;
    NSMutableArray *messagesFilteredIn;
    NSMutableArray *messagesFilteredOut;
    int taskType;
}

+ (id)infoForType:(int)fp8;
- (void)dealloc;

@end

@interface MessageThreadingData : NSObject
{
    Message *parent;
    NSMutableSet *replies;
    MessageThread *thread;
}

- (id)description;
- (void)dealloc;

@end

@interface NSArray (MallAdditions)
- (id)arrayByReplacingThreadsWithMembers;
@end

@interface QuickTimeAttachmentView : NSMovieView
{
    NSString *_attachPath;
    NSURL *_url;
}

+ (void)initialize;
+ (id)viewForFileWrapper:(id)fp8;
- (void)setURL:(id)fp8;
- (id)URL;
- (void)webPlugInStart;
- (id)menuForEvent:(id)fp8;
- (void)dealloc;
- (void)setFrame:(struct _NSRect)fp8;
- (void)mouseDragged:(id)fp8;

@end

@interface AddressPicker : NSWindowController
{
    ABPeoplePickerView *pickerView;
}

+ (void)showOrHideAddressPicker;
+ (BOOL)isAddressPickerVisible;
+ (void)saveDefaults;
+ (void)restoreFromDefaults;
- (void)showOrHideWindow;
- (BOOL)isWindowVisible;
- (void)saveDefaults;
- (void)dealloc;
- (void)awakeFromNib;
- (id)windowNibName;
- (void)putSelectionInTo:(id)fp8;
- (void)putSelectionInCC:(id)fp8;
- (void)putSelectionInBestHeader:(id)fp8;
- (void)putSelectionInHeader:(id)fp8;
- (id)formattedAddressForRecord:(id)fp8;

@end

@interface AddressHistoryController : NSObject
{
    NSTableView *historyTableView;
    NSButton *addToAddressBookButton;
    NSWindow *window;
    NSSearchField *searchField;
    NSMutableArray *historyRecords;
    NSString *sortColumn;
    BOOL sortIsAscending;
    NSImage *sortAscendingImage;
    NSImage *sortDescendingImage;
    NSImage *addressBookPersonImage;
}

+ (id)sharedInstance;
- (id)init;
- (void)dealloc;
- (void)showAddressHistory;
- (void)addToAddressBook:(id)fp8;
- (void)deleteFromHistory:(id)fp8;
- (void)search:(id)fp8;
- (void)cancelSearch:(id)fp8;
- (void)windowWillClose:(id)fp8;
- (void)openAddressBook:(id)fp8;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (void)tableViewSelectionDidChange:(id)fp8;
- (void)tableView:(id)fp8 didClickTableColumn:(id)fp12;
- (void)sortHistory;
- (void)showColumnSortIndicator;
- (id)tableView:(id)fp8 toolTipForCell:(id)fp12 rect:(struct _NSRect *)fp16 tableColumn:(id)fp20 row:(int)fp24 mouseLocation:(struct _NSPoint)fp28;

@end

@interface Message (Chat)
+ (id)chatURLForEmails:(id)fp8;
@end

@interface PresenceTracker : NSObject
{
    NSMutableDictionary *personIDToStatus;
    NSMutableDictionary *emailToPerson;
    BOOL isListening;
    NSImage *availableStatusImage;
}

+ (id)sharedInstance;
- (id)availableStatusImage;
- (id)init;
- (void)dealloc;
- (void)updatePersonInfo:(id)fp8 forService:(id)fp12;
- (void)updateBuddyInfo:(id)fp8 forService:(id)fp12;
- (void)startListening;
- (void)stopListening;
- (void)_addEmailToPersonMapping:(id)fp8;
- (void)_rebuildEmailToUID;
- (void)myStatusChanged:(id)fp8;
- (void)personChanged:(id)fp8;
- (void)presenceChanged:(id)fp8;
- (BOOL)personWithEmailIsOnline:(id)fp8;
- (id)addressCardUIDForEmail:(id)fp8;
- (void)_addressBookChanged:(id)fp8;
- (void)statusImagesChanged:(id)fp8;

@end

@interface NonModalAlert : NSObject
{
    id _representedObject;
    NSPanel *_panel;
    NSTextField *_title;
    NSTextField *_message;
}

+ (void)runNonModalForObject:(id)fp8 error:(id)fp12;
+ (void)dismissNonModalAlertForObject:(id)fp8;
- (void)dealloc;
- (id)initWithError:(id)fp8 representedObject:(id)fp12;
- (void)show;
- (id)representedObject;
- (void)okClicked:(id)fp8;

@end

@interface NSAlert (MFErrorSupport)
+ (id)createAlertForError:(id)fp8 defaultButton:(id)fp12 alternateButton:(id)fp16 otherButton:(id)fp20;
- (void)setEscapeKeyEquivalentOnButtonWithTitle:(id)fp8;
@end

@interface NSObject (NonModalAlertPanel)
- (void)runNonModalAlertWithError:(id)fp8;
- (void)dismissNonModalAlert;
@end

@interface NSTextView (AtomicAddress)
- (void)fixAtomSelectionForSelectionRange:(struct _NSRange)fp8;
- (void)fixJoiningOfSelectedAtoms;
@end

@interface NSArray (AtomicAddress)
- (id)atomicAddressesOfType:(int)fp8;
- (id)attributedStringOfAddressesAttachments:(id *)fp8 type:(int)fp12;
@end

@interface NSAttributedString (AtomicAddress)
+ (id)atomicAddressFromDictionary:(id)fp8;
- (BOOL)containsOnlyAtoms;
- (id)unatomicAddress;
- (id)dictionaryRepresentation;
- (id)atomicAddresses;
- (id)allAddresses;
- (id)addressAttachments;
- (id)unatomicAddresses;
- (id)replaceAttachmentsWithAddressesIncludeName:(BOOL)fp8;
- (BOOL)containsAddressAttachments;
- (id)stringWithAtomsExpanded;
- (id)stringOfAddressesWithAtomsExpandedIncludeName:(BOOL)fp8;
- (id)mutableCopyWithNewAttachments:(id *)fp8;
- (struct _NSRange)convertPlainTextRange:(struct _NSRange)fp8;
- (struct _NSRange)convertToPlainTextRange:(struct _NSRange)fp8;
- (void)testSpotlighting;
- (BOOL)knownToHaveNoRecord;
- (id)addressBookRecord;
- (void)displayCommasExceptAtEnd;
- (void)displayCommasForAllAddresses;
@end

@interface NSString (AtomicAddress)
- (id)atomicAddress;
- (id)atomicAddressStringForRepresentedRecord:(id)fp8 type:(int)fp12;
- (id)atomicAddressStringForRepresentedRecord:(id)fp8 type:(int)fp12 showComma:(BOOL)fp16;
- (id)atomicAddressArrayForRepresentedRecord:(id)fp8 type:(int)fp12;
- (id)atomicAddressWithRepresentedRecord:(id)fp8 type:(int)fp12;
- (id)atomicAddressWithRepresentedRecord:(id)fp8 type:(int)fp12 showComma:(BOOL)fp16;
@end

@interface DraggingTextView : NSTextView
{
}

+ (id)addressingFieldEditorForObject:(id)fp8;
- (void)dealloc;
- (void)mouseDown:(id)fp8;
- (id)typingAttributes;
- (void)selectAll:(id)fp8;
- (void)setSelectedRange:(struct _NSRange)fp8;
- (void)setSelectedRange:(struct _NSRange)fp8 affinity:(int)fp16 stillSelecting:(BOOL)fp20;
- (struct _NSRange)selectionRangeForProposedRange:(struct _NSRange)fp8 granularity:(int)fp16;
- (void)layoutManager:(id)fp8 didCompleteLayoutForTextContainer:(id)fp12 atEnd:(BOOL)fp16;
- (void)delayedLayoutInvalidation:(id)fp8;
- (void)doCommandBySelector:(SEL)fp8;
- (BOOL)prepareForDragOperation:(id)fp8;
- (BOOL)readSelectionFromPasteboard:(id)fp8 type:(id)fp12;
- (id)readablePasteboardTypes;
- (id)writablePasteboardTypes;
- (id)dragImageForSelectionWithEvent:(id)fp8 origin:(struct _NSPoint *)fp12;
- (unsigned int)draggingSourceOperationMaskForLocal:(BOOL)fp8;
- (BOOL)writeSelectionToPasteboard:(id)fp8 type:(id)fp12;
- (id)acceptableDragTypes;
- (BOOL)dragSelectionWithEvent:(id)fp8 offset:(struct _NSSize)fp12 slideBack:(BOOL)fp20;
- (void)draggedImage:(id)fp8 endedAt:(struct _NSPoint)fp12 operation:(unsigned int)fp20;
- (id)searchString;
- (struct _NSRange)selectedSearchRange;
- (void)showSearchResultsRange:(struct _NSRange)fp8;
- (id)menuForEvent:(id)fp8;
- (id)attachmentForPoint:(struct _NSPoint)fp8;
- (id)attachmentForEvent:(id)fp8;
- (struct _NSRect)_cellFrameForAttachment:(id)fp8 atCharIndex:(int)fp12;
- (void)concludeDragOperation:(id)fp8;
- (unsigned int)draggingEntered:(id)fp8;
- (unsigned int)draggingUpdated:(id)fp8;

@end

@interface AddressAttachment : NSTextAttachment
{
    NSString *address;
    NSString *name;
    int type;
    id addressBookRecord;
    BOOL isInitializing;
    BOOL suppressNotifications;
    BOOL isSenderAddress;
    BOOL isOriginalSenderAddress;
    BOOL knownToHaveNoRecord;
    NSFont *preferredFont;
}

+ (void)initialize;
+ (void)getRecordsForAddresses:(id)fp8;
+ (id)attributesForType:(int)fp8;
+ (void)resetAttributes;
+ (BOOL)domainIsExternal:(id)fp8;
+ (id)colorForExternalDomain;
+ (int)addressDisplayMode;
+ (void)setAddressDisplayMode:(int)fp8;
- (id)initWithAddress:(id)fp8 record:(id)fp12 type:(int)fp16;
- (id)initWithAddress:(id)fp8 record:(id)fp12 type:(int)fp16 showComma:(BOOL)fp20;
- (id)initWithFileWrapper:(id)fp8;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (void)dealloc;
- (void)adjustFontSizeBy:(int)fp8;
- (id)drawingAttributes;
- (BOOL)isInitializing;
- (void)setAddress:(id)fp8;
- (id)address;
- (id)pasteboardString;
- (id)nonemptyAddress;
- (void)setName:(id)fp8;
- (id)name;
- (id)formattedAddress;
- (id)quotedFormattedAddress;
- (id)nameOrAddressForDisplay;
- (id)addressDomain;
- (void)writeToPasteboard:(id)fp8;
- (id)vCardString;
- (id)vCardRepresentation;
- (id)dictionaryRepresentation;
- (BOOL)hasToolTip;
- (id)toolTip;
- (int)type;
- (void)addressDisplayModeChanged:(id)fp8;
- (void)setAddressBookRecord:(id)fp8;
- (id)addressBookRecord;
- (void)removeAddressBookRecord;
- (void)setKnownToHaveNoRecord:(BOOL)fp8;
- (BOOL)knownToHaveNoRecord;
- (BOOL)isInAddressBook;
- (BOOL)isSenderAddress;
- (void)setIsSenderAddress;
- (BOOL)isOriginalSenderAddress;
- (void)setIsOriginalSenderAddress;
- (void)domainForMatchingDidChange;
- (BOOL)isSelected;
- (void)setIsSelected:(BOOL)fp8;
- (void)setRightSideHasSelectedText:(BOOL)fp8;
- (void)setRightSideHasSelectedAtom:(BOOL)fp8;
- (void)setLeftSideHasSelection:(BOOL)fp8;
- (id)attachmentCell;
- (void)onlinePresenceChanged:(id)fp8;
- (void)antialiasingSettingsChanged:(id)fp8;

@end

@interface AddressAttachmentCell : NSTextAttachmentCell
{
    AddressAttachment *attachment;
    struct _NSRect drawingRect;
    struct _NSRect hotSpot;
    struct _NSRect onlineHotSpot;
    NSMenu *menu;
    unsigned int characterIndex;
    struct _NSSize cellSize;
    BOOL isSpotlighted;
    BOOL shouldTestForSpotlighting;
    BOOL shouldShowComma;
    NSMutableDictionary *textAttributesRegular;
    NSMutableDictionary *textAttributesWhiteText;
    NSMutableDictionary *textAttributesTruncatedRegular;
    NSMutableDictionary *textAttributesTruncatedWhiteText;
    NSView *containingView;
    unsigned int isSelected:1;
    unsigned int leftSideHasSelection:1;
    unsigned int rightSideHasSelectedText:1;
    unsigned int rightSideHasSelectedAtom:1;
    unsigned int overrideRightSideSelection:1;
    unsigned int overrideLeftSideSelection:1;
    unsigned int hideLeftSideMargin:1;
    unsigned int subtractLeftSideMarginFromRightSide:1;
    unsigned int menuIsVisible:1;
}

+ (void)initialize;
+ (int)sizeForCellOfType:(int)fp8 withAddress:(id)fp12;
+ (float)heightForAtomType:(int)fp8;
+ (BOOL)isOnLineAddress:(id)fp8;
- (id)initImageCell:(id)fp8;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (id)addressAttachment;
- (void)setAttachment:(id)fp8;
- (void)dealloc;
- (int)characterIndex;
- (struct _NSRect)drawingRect;
- (struct _NSRect)visibleRect;
- (struct _NSRect)atomBoundsRectForCellFrame:(struct _NSRect)fp8;
- (struct _NSRect)atomBoundsRect;
- (id)dragImage;
- (id)textAttributesWhiteText;
- (id)textAttributesTruncatedWhiteText;
- (id)textAttributesRegular;
- (id)textAttributesTruncatedRegular;
- (id)view:(id)fp8 stringForToolTip:(int)fp12 point:(struct _NSPoint)fp16 userData:(void *)fp24;
- (void)resetCursorAndToolTipRect:(struct _NSRect)fp8 inView:(id)fp24;
- (id)menu;
- (BOOL)validateMenuItem:(id)fp8;
- (BOOL)isOnLine;
- (void)openChat:(id)fp8;
- (void)openNewMessage:(id)fp8;
- (void)addToAddressBook:(id)fp8;
- (void)openInAddressBook:(id)fp8;
- (void)createSmartMailbox:(id)fp8;
- (void)removeFromAddressHistory:(id)fp8;
- (void)changeAddress:(id)fp8;
- (void)copyAddressToClipboard:(id)fp8;
- (void)searchInSpotlight:(id)fp8;
- (BOOL)isSelected;
- (void)setIsSelected:(BOOL)fp8;
- (BOOL)rightSideHasSelectedText;
- (void)setRightSideHasSelectedText:(BOOL)fp8;
- (void)setRightSideHasSelectedAtom:(BOOL)fp8;
- (BOOL)leftSideHasSelection;
- (void)setLeftSideHasSelection:(BOOL)fp8;
- (void)setOverrideRightSideSelection:(BOOL)fp8;
- (void)setOverrideLeftSideSelection:(BOOL)fp8;
- (void)testSpotlighting;
- (void)setShouldShowComma:(BOOL)fp8;
- (BOOL)shouldDrawCommaRightNow;
- (void)selectedAddressChanged;
- (void)fontChanged;
- (void)sizeChanged;
- (void)addressBookRecordChanged;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24 characterIndex:(unsigned int)fp28;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24 characterIndex:(unsigned int)fp28 layoutManager:(id)fp32;
- (void)_drawAtomPartsWithRect:(struct _NSRect)fp8 cellFrame:(struct _NSRect)fp24;
- (void)_drawAtomWithRect:(struct _NSRect)fp8 cellFrame:(struct _NSRect)fp24;
- (struct _NSPoint)textDrawPointInRect:(struct _NSRect)fp8 ofView:(id)fp24;
- (struct _NSSize)cellSize;
- (struct _NSSize)sizeOfString:(id)fp8;
- (struct _NSRect)cellFrameForTextContainer:(id)fp8 proposedLineFragment:(struct _NSRect)fp12 glyphPosition:(struct _NSPoint)fp28 characterIndex:(unsigned int)fp36;
- (struct _NSPoint)cellBaselineOffset;
- (BOOL)trackMouse:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 atCharacterIndex:(unsigned int)fp32 untilMouseUp:(BOOL)fp36;
- (BOOL)wantsToTrackMouse;
- (BOOL)wantsToTrackMouseForEvent:(id)fp8;
- (BOOL)wantsToTrackMouseForEvent:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 atCharacterIndex:(unsigned int)fp32;
- (BOOL)shouldBeSpotlightedInView:(id)fp8;
- (void)mouseEntered:(id)fp8;
- (void)delayedMouseEntered:(id)fp8;
- (void)mouseExited:(id)fp8;
- (void)otherAtomBecameSpotlighted:(id)fp8;
- (id)accessibilityAttributeNames;
- (id)accessibilityAttributeValue:(id)fp8;
- (BOOL)accessibilityIsAttributeSettable:(id)fp8;
- (id)accessibilityActionNames;
- (void)accessibilityPerformAction:(id)fp8;
- (void)showMenu;

@end

@interface _MenuItemThatDoesNotRetainRepresentedObject : NSMenuItem
{
    id _representedObject;
}

- (void)setRepresentedObject:(id)fp8;
- (id)representedObject;

@end

@interface SingleMessageViewer : MessageViewer <MVSelectionOwner>
{
    NSView *_messageContentView;
    MessageStore *messageStore;
    SpotlightBar *_spotlightBar;
}

+ (id)viewerForMessage:(id)fp8 showAllHeaders:(BOOL)fp12 viewingState:(id)fp16;
+ (void)restoreFromDefaults;
+ (void)saveDefaultsOmittingViewer:(id)fp8;
- (id)initForViewingMessage:(id)fp8 showAllHeaders:(BOOL)fp12 viewingState:(id)fp16 fromDefaults:(BOOL)fp20;
- (id)initForViewingMessage:(id)fp8 showAllHeaders:(BOOL)fp12 viewingState:(id)fp16;
- (id)initWithSavedDefaults:(id)fp8;
- (void)dealloc;
- (id)messageIDDictionary;
- (void)_adjustNewSingleViewerWindowFrame;
- (void)_setupFromDefaults;
- (void)showAndMakeKey:(BOOL)fp8;
- (void)_restoreViewer;
- (id)_saveDefaults;
- (void)takeOverAsSelectionOwner;
- (void)resignAsSelectionOwner;
- (id)selectedMessages;
- (void)messageFlagsDidChange:(id)fp8;
- (void)_setupToolBar;
- (BOOL)_isViewingMessage:(id)fp8;
- (BOOL)_selectionContainsMessagesWithReadStatusEqualTo:(BOOL)fp8;
- (BOOL)_selectionContainsMessagesWithFlaggedStatusEqualTo:(BOOL)fp8;
- (BOOL)_selectionContainsMessagesWithJunkMailLevelEqualTo:(int)fp8;
- (BOOL)_selectionContainsMessagesWithAttachments;
- (void)deleteMessages:(id)fp8;
- (void)deleteMessagesAllowingMoveToTrash:(BOOL)fp8;
- (void)replyMessage:(id)fp8;
- (void)replyAllMessage:(id)fp8;
- (void)replyToSender:(id)fp8;
- (void)replyToOriginalSender:(id)fp8;
- (void)forwardMessage:(id)fp8;
- (void)redirectMessage:(id)fp8;
- (BOOL)send:(id)fp8;
- (void)editorWithGatekeeperApproval:(id)fp8;
- (void)replaceWithEditorForType:(int)fp8;
- (void)_changeFlag:(id)fp8 state:(BOOL)fp12 forMessages:(id)fp16 undoActionName:(id)fp20;
- (void)keyDown:(id)fp8;
- (id)selection;
- (void)selectMessages:(id)fp8;
- (id)currentDisplayedMessage;
- (id)messageStore;
- (BOOL)transferSelectionToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12;
- (void)_showSpotlightBarWithSearchString:(id)fp8;
- (void)_hideSpotlightBar;
- (void)setSearchString:(id)fp8;
- (void)revealMessage:(id)fp8;

@end

@interface MessageViewingState : NSObject
{
    NSAttributedString *_headerAttributedString;
    NSDictionary *_addressAttachments;
    NSDictionary *_plainAddresses;
    NSSet *_expandedAddressKeys;
    NSAttributedString *_attachmentsDescription;
    NSArray *_headerOrder;
    MimeBody *mimeBody;
    id document;
    MFError *error;
    int headerIndent;
    int headerFontAdjustmentDebt;
    unsigned int preferredAlternative:23;
    unsigned int accountWasOffline:1;
    unsigned int dontCache:1;
    unsigned int showAllHeaders:1;
    unsigned int showDefaultHeaders:1;
    unsigned int isPrinting:1;
    unsigned int viewSource:1;
    unsigned int showControlChars:1;
    unsigned int showAttachments:1;
    unsigned int downloadRemoteURLs:1;
    unsigned int triedToDownloadRemoteURLs:1;
    unsigned int urlificationDone:1;
    unsigned int messageIsFromEntourage:1;
    unsigned int preferredEncoding;
    ActivityMonitor *monitor;
    NSString *sender;
    NSString *senderName;
    int priority;
    id displayer;
}

+ (void)initialize;
- (void)dealloc;
- (id)init;
- (id)mimeBody;
- (id)headerAttributedString;
- (void)setHeaderAttributedString:(id)fp8;
- (id)plainAddresses;
- (void)setPlainAddresses:(id)fp8;
- (id)addressAttachments;
- (void)setAddressAttachments:(id)fp8;
- (id)expandedAddressKeys;
- (void)setExpandedAddressKeys:(id)fp8;
- (id)attachmentsDescription;
- (void)setAttachmentsDescription:(id)fp8;
- (id)headerOrder;
- (void)setHeaderOrder:(id)fp8;
- (int)headerDetailLevel;

@end

@interface TextMessageDisplay : NSObject <MessageContentDisplay>
{
    NSScrollView *messageScroll;
    MessageTextView *textView;
    MessageHeaderDisplay *headerDisplay;
    MessageBody *messageBody;
    BOOL attachmentsMayBeLoading;
    BOOL needsSetUp;
    NSMutableSet *gatekeeperApprovedAttachments;
}

+ (id)copyDocumentForMessage:(id)fp8 viewingState:(id)fp12;
- (void)dealloc;
- (id)findTarget;
- (id)contentView;
- (id)textView;
- (void)awakeFromNib;
- (void)display:(id)fp8 inContainerView:(id)fp12 replacingView:(id)fp16;
- (void)prepareToRemoveView;
- (id)selectedText;
- (id)selectedWebArchive;
- (id)attachmentsInSelection;
- (id)webArchive;
- (void)highlightSearchText:(id)fp8;
- (void)adjustFontSizeBy:(int)fp8 viewingState:(id)fp12;
- (void)displayAttributedString:(id)fp8;
- (void)_webViewSelectionDidChange:(id)fp8;
- (id)attachmentContextMenu;
- (id)messageTextView:(id)fp8 willReturnMenu:(id)fp12 forEvent:(id)fp16;
- (void)textView:(id)fp8 clickedOnCell:(id)fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32;
- (void)textView:(id)fp8 doubleClickedOnCell:(id)fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32;
- (void)textView:(id)fp8 draggedCell:(id)fp12 inRect:(struct _NSRect)fp16 event:(id)fp32 atIndex:(unsigned int)fp36;
- (BOOL)textView:(id)fp8 shouldWriteSelectionToPasteboard:(id)fp12 types:(id)fp16;
- (BOOL)textView:(id)fp8 clickedOnLink:(id)fp12 atIndex:(unsigned int)fp16;
- (id)textView:(id)fp8 willWriteSelectionToPasteboard:(id)fp12 type:(id)fp16;
- (id)textView:(id)fp8 dragImageForSelectionWithEvent:(id)fp12 origin:(struct _NSPoint *)fp16;
- (id)dragImageForSelection;
- (BOOL)cachedGatekeeperApprovalStatusForAttachment:(id)fp8;
- (void)cacheGatekeeperApprovalStatus:(BOOL)fp8 forAttachment:(id)fp12;
- (void)textViewDidSelectAll:(id)fp8;
- (void)selectAll;
- (void)textView:(id)fp8 setSelectedRange:(struct _NSRange)fp12 affinity:(int)fp20 stillSelecting:(BOOL)fp24;
- (void)headerTextIsChangingSelectionToRange:(struct _NSRange)fp8;
- (void)updateURLMatches:(id)fp8 viewingState:(id)fp12;

@end

@interface FadingMessageDisplay : NSObject <MessageContentDisplay>
{
    NSTimer *_fadeTimer;
    int _fadeStepCounter;
    TextMessageDisplay *_textMessageDisplay;
    NSImageView *_snapshotView;
    MessageTilingView *_originalView;
    NSView *_messageProgressCompositeView;
    NSProgressIndicator *_progressIndicator;
}

+ (id)copyDocumentForMessage:(id)fp8 viewingState:(id)fp12;
- (void)dealloc;
- (void)showMessageProgress;
- (void)fadeOneNotch:(id)fp8;
- (id)contentView;
- (id)textView;
- (id)copySnapshotOfRect:(struct _NSRect)fp8 inView:(id)fp24;
- (void)display:(id)fp8 inContainerView:(id)fp12 replacingView:(id)fp16;
- (void)prepareToRemoveView;
- (id)selectedText;
- (id)selectedWebArchive;
- (id)attachmentsInSelection;
- (id)webArchive;
- (void)highlightSearchText:(id)fp8;
- (void)adjustFontSizeBy:(int)fp8 viewingState:(id)fp12;
- (void)setTextMessageDisplay:(id)fp8;
- (id)findTarget;
- (void)updateURLMatches:(id)fp8 viewingState:(id)fp12;

@end

@interface FindPanel : NSObject
{
    NSButton *findNextButton;
    NSTextField *findTextField;
    NSButton *ignoreCaseButton;
    NSMatrix *replaceAllScopeMatrix;
    NSTextField *replaceTextField;
    NSTextField *statusField;
    NSString *findString;
    BOOL lastFindWasSuccessful;
}

+ (id)sharedInstance;
- (id)init;
- (void)_appDidActivate;
- (void)dealloc;
- (id)findString;
- (void)setFindString:(id)fp8;
- (void)setFindString:(id)fp8 writeToPasteboard:(BOOL)fp12;
- (id)findPanel;
- (void)orderFrontFindPanel:(id)fp8;
- (void)findNextAndOrderFindPanelOut:(id)fp8;
- (void)findNext:(id)fp8;
- (void)findPrevious:(id)fp8;
- (void)ignoreCaseButtonClicked:(id)fp8;
- (void)replace:(id)fp8;
- (void)replaceAndFind:(id)fp8;
- (void)replaceAll:(id)fp8;

@end

@interface WebHTMLView (FindPanelStuff)
- (BOOL)canReplace;
- (unsigned int)replaceString:(id)fp8 withString:(id)fp12 options:(unsigned int)fp16;
@end

@interface NSString (FindPanelSupport)
- (struct _NSRange)findString:(id)fp8 selectedRange:(struct _NSRange)fp12 options:(unsigned int)fp20 wrap:(BOOL)fp24;
@end

@interface NSTextView (FindPanelTarget)
- (void)jumpToSelection:(id)fp8;
- (void)takeFindStringFromSelection:(id)fp8;
- (BOOL)findString:(id)fp8 options:(unsigned int)fp12;
- (BOOL)canReplace;
- (unsigned int)replaceString:(id)fp8 withString:(id)fp12 options:(unsigned int)fp16;
@end

@interface MessageListCell : NSImageCell
{
    NSTextFieldCell *_textCell;
    NSString *_stringValue;
    float _maxHeight;
    float _maxWidth;
    int contentType;
    int contentCount;
}

- (void)dealloc;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (id)_textCell;
- (void)setFont:(id)fp8;
- (void)setMaxHeight:(float)fp8;
- (float)maxHeight;
- (void)setMaxWidth:(float)fp8;
- (float)maxWidth;
- (struct _NSSize)_imageSizeForCellFrame:(struct _NSRect)fp8;
- (struct _NSPoint)_drawOriginForSize:(struct _NSSize)fp8 inRect:(struct _NSRect)fp16;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)setObjectValue:(id)fp8;
- (struct _NSRect)imageRectForBounds:(struct _NSRect)fp8;
- (struct _NSRect)titleRectForBounds:(struct _NSRect)fp8;
- (void)setContentType:(int)fp8;
- (void)setContentCount:(int)fp8;
- (id)accessibilityAttributeNames;
- (id)accessibilityAttributeValue:(id)fp8;

@end

@interface MessageListHeaderCell : NSTableHeaderCell
{
    MessageListCell *_realCell;
    int _imageAlignment;
    NSString *accessibilityTitle;
}

- (void)dealloc;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)setImageAlignment:(int)fp8;
- (void)setAccessibilityTitle:(id)fp8;
- (id)accessibilityAttributeValue:(id)fp8;

@end

@interface MessageHeaderDisplay : NSObject
{
    MessageHeaderView *headerView;
    MessageContentController *contentController;
    MessageTextContainer *specialContainer;
    NSImageView *senderImageView;
    NSString *unloadedSender;
    float oldHeaderViewWidth;
    BOOL isCalculatingAddressLines;
    BOOL isForPrinting;
    BOOL isViewingSource;
}

+ (id)copyHeadersForMessage:(id)fp8 viewingState:(id)fp12;
+ (void)setUpAttachmentsDescriptionForMessage:(id)fp8 viewingState:(id)fp12;
+ (id)formattedAttachmentsSizeForAttachments:(id)fp8;
+ (id)formattedAttachmentsSizeForMessage:(id)fp8;
+ (int)numberOfAddressesThatFitOnTwoLinesAttachments:(id)fp8 strings:(id)fp12 inTextContainer:(id)fp16 withIndent:(int)fp20 andVerticalLocation:(int)fp24 forPrinting:(BOOL)fp28;
+ (id)linkForMoreAddressesCount:(int)fp8 headerKey:(id)fp12 font:(id)fp16;
+ (id)copyViewingState:(id)fp8;
+ (void)setUpEncryptionAndSignatureImageForMessage:(id)fp8 viewingState:(id)fp12;
+ (id)orderedKeys:(id)fp8 withTableViewOrder:(id)fp12;
+ (id)regularParagraphStyleForTabPosition:(int)fp8;
+ (id)regularParagraphStyleForTabPosition:(int)fp8 paragraphSpacing:(int)fp12;
+ (id)addressParagraphStyleForTabPosition:(int)fp8 withLineBreakMode:(int)fp12 forPrinting:(BOOL)fp16;
+ (void)setTabsWithPosition:(int)fp8 inAttributedString:(id)fp12 withKeys:(id)fp16 addressKeys:(id)fp20 addressAttachments:(id)fp24 forPrinting:(BOOL)fp28;
+ (id)attributedStringOfLength:(int)fp8 usingAttachments:(id)fp12 startingAtIndex:(int)fp16 strings:(id)fp20 newAttachments:(id *)fp24 forPrinting:(BOOL)fp28;
+ (void)rangeOfAddresses:(struct _NSRange *)fp8 rangeOfLink:(struct _NSRange *)fp12 forKey:(id)fp16 inAttributedString:(id)fp20;
- (void)dealloc;
- (void)awakeFromNib;
- (void)setUp;
- (void)display:(id)fp8;
- (void)prepareToRemoveView;
- (void)displayAttributedString:(id)fp8;
- (void)headerViewFrameChanged:(id)fp8;
- (void)recalculateAddressLinesShouldDisplay:(BOOL)fp8;
- (void)showAllAddressesForKey:(id)fp8;
- (id)textView:(id)fp8 willWriteSelectionToPasteboard:(id)fp12 type:(id)fp16;
- (BOOL)textView:(id)fp8 clickedOnLink:(id)fp12 atIndex:(unsigned int)fp16;
- (void)adjustFontSizeBy:(int)fp8 viewingState:(id)fp12;
- (id)selectedText;
- (id)textView:(id)fp8 dragImageForSelectionWithEvent:(id)fp12 origin:(struct _NSPoint *)fp16;
- (id)dragImageForSelection;
- (void)textViewDidSelectAll:(id)fp8;
- (void)selectAll;
- (void)textView:(id)fp8 setSelectedRange:(struct _NSRange)fp12 affinity:(int)fp20 stillSelecting:(BOOL)fp24;
- (void)messageTextIsChangingSelectionToRange:(struct _NSRange)fp8;
- (void)_addressPhotoLoaded:(id)fp8;
- (id)textView;
- (void)textView:(id)fp8 clickedOnCell:(id)fp12 event:(id)fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp36;
- (void)textView:(id)fp8 draggedCell:(id)fp12 inRect:(struct _NSRect)fp16 event:(id)fp32 atIndex:(unsigned int)fp36;
- (void)layoutManager:(id)fp8 didCompleteLayoutForTextContainer:(id)fp12 atEnd:(BOOL)fp16;
- (void)setIsForPrinting:(BOOL)fp8;

@end

@interface MessageTilingView : NSView
{
    NSTextView *headerView;
    NSView *bodyView;
    AttachmentsView *attachmentsView;
    NSImageView *senderImageView;
    NSTextView *revealLinkView;
    unsigned int _doneInitializing:1;
    unsigned int _shouldShowSeparator:1;
    unsigned int _tilingSubviews:1;
    unsigned int _resizingFromSuperview:1;
    unsigned int _bodyViewIsLoaded:1;
    unsigned int _okayToResize:1;
    unsigned int _hasResizedBody:1;
    unsigned int _showRevealMessageLink;
    NSView *accessibilityLinkedView;
}

- (void)awakeFromNib;
- (void)dealloc;
- (id)attachmentsView;
- (id)senderImageView;
- (id)bodyView;
- (void)setBodyView:(id)fp8;
- (void)setUpAccessiblityLinks;
- (void)setUpAccessiblityLinksFromView:(id)fp8;
- (void)showAttachmentsView:(BOOL)fp8;
- (void)showSeparator:(BOOL)fp8;
- (void)_updateRevealLinkPosition;
- (void)showSenderImage:(BOOL)fp8;
- (BOOL)isFlipped;
- (void)subviewFrameChanged:(id)fp8;
- (struct _NSSize)contentSize;
- (void)resizeWithOldSuperviewSize:(struct _NSSize)fp8;
- (void)resizeSubviewsWithOldSize:(struct _NSSize)fp8;
- (void)tile;
- (void)drawRect:(struct _NSRect)fp8;
- (void)setBodyViewIsLoaded:(BOOL)fp8;
- (BOOL)knowsPageRange:(struct _NSRange *)fp8;
- (BOOL)isOpaque;
- (void)keyDown:(id)fp8;
- (void)mouseDown:(id)fp8;
- (void)setShowRevealMessageLink:(BOOL)fp8;
- (BOOL)showRevealMessageLink;
- (id)_textAttributesForRevealLink;
- (id)_revealLinkString;
- (id)revealLinkView;
- (id)_revealLinkView;
- (BOOL)showRevealMessageLinkView;
- (BOOL)textView:(id)fp8 clickedOnLink:(id)fp12 atIndex:(unsigned int)fp16;

@end

@interface RevealLinkView : NSTextView
{
}

- (void)mouseDown:(id)fp8;
- (void)resetCursorRects;

@end

@interface SenderImageCell : NSImageCell
{
}

- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface NSView (TilingSupport)
- (void)adjustForTilingView:(id)fp8 oldSize:(struct _NSSize)fp12;
- (float)desiredWidth;
@end

@interface MessageHeaderView : NSTextView
{
    NSMutableArray *trackingRectTags;
    BOOL isTrackingMouse;
}

- (void)awakeFromNib;
- (void)dealloc;
- (void)keyDown:(id)fp8;
- (void)mouseDown:(id)fp8;
- (void)trackHeaderAddresses:(id)fp8 replacingPreviousAddresses:(BOOL)fp12;
- (void)addressAtomsWereUpdated:(id)fp8;
- (void)addressAttachmentSizeChanged:(id)fp8;
- (void)addressAppearanceChanged:(id)fp8;
- (void)selectAll:(id)fp8;
- (void)originalSelectAll:(id)fp8;
- (void)setSelectedRange:(struct _NSRange)fp8 affinity:(int)fp16 stillSelecting:(BOOL)fp20;
- (void)setSelectedRange:(struct _NSRange)fp8;
- (struct _NSRange)selectionRangeForProposedRange:(struct _NSRange)fp8 granularity:(int)fp16;
- (id)dragImageForSelectionWithEvent:(id)fp8 origin:(struct _NSPoint *)fp12;
- (id)originalDragImageForSelectionWithEvent:(id)fp8 origin:(struct _NSPoint *)fp12;
- (struct _NSRect)_cellFrameForAttachment:(id)fp8 atCharIndex:(int)fp12;
- (void)_removeCursorRects;
- (void)resetCursorRects;
- (void)viewWillMoveToWindow:(id)fp8;
- (void)viewDidMoveToWindow;
- (void)didChangeText;
- (id)writablePasteboardTypes;
- (BOOL)writeSelectionToPasteboard:(id)fp8 type:(id)fp12;
- (id)menuForEvent:(id)fp8;
- (id)attachmentForPoint:(struct _NSPoint)fp8;
- (id)attachmentForEvent:(id)fp8;

@end

@interface SlideshowButtonCell : NSButtonCell
{
    struct _NSSize _labelSize;
}

- (id)initWithTitle:(id)fp8;
- (id)attributedTitle;
- (void)_calcLabelSize;
- (void)setFont:(id)fp8;
- (void)setTitle:(id)fp8;
- (struct _NSSize)cellSizeForBounds:(struct _NSRect)fp8;
- (struct _NSRect)titleRectForBounds:(struct _NSRect)fp8;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface SaveAttachmentsButtonCell : NSActionCell
{
    struct _NSSize _labelSize;
    NSMenu *_menu;
    NSTimer *_menuTimer;
    struct _NSRect _trackingRect;
    BOOL _sendSelectionAction;
}

+ (BOOL)prefersTrackingUntilMouseUp;
- (id)initWithTitle:(id)fp8;
- (void)_invalidateMenuTimer;
- (void)dealloc;
- (id)menu;
- (id)attributedTitle;
- (void)_calcLabelSize;
- (void)setFont:(id)fp8;
- (void)setTitle:(id)fp8;
- (struct _NSSize)cellSizeForBounds:(struct _NSRect)fp8;
- (struct _NSRect)titleRectForBounds:(struct _NSRect)fp8;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (BOOL)startTrackingAt:(struct _NSPoint)fp8 inView:(id)fp16;
- (BOOL)continueTracking:(struct _NSPoint)fp8 at:(struct _NSPoint)fp16 inView:(id)fp24;
- (void)stopTracking:(struct _NSPoint)fp8 at:(struct _NSPoint)fp16 inView:(id)fp24 mouseIsUp:(BOOL)fp28;
- (BOOL)_sendActionFrom:(id)fp8;
- (BOOL)trackMouse:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 untilMouseUp:(BOOL)fp32;
- (void)_trackMenu;
- (void)performClick:(id)fp8;
- (void)_displayDelayedMenu;
- (id)accessibilityAttributeNames;
- (id)accessibilityAttributeValue:(id)fp8;
- (BOOL)accessibilityIsAttributeSettable:(id)fp8;
- (id)accessibilityActionNames;
- (id)accessibilityActionDescription:(id)fp8;
- (void)accessibilityPerformAction:(id)fp8;

@end

@interface AttachmentsView : NSView
{
    NSButton *disclosureButton;
    NSTextField *descriptionField;
    MessageTextView *attachmentsTextView;
    NSImage *paperclip;
    struct _NSPoint paperclipPoint;
    int headerIndent;
    struct _NSRect rectToAvoid;
    NSArray *attachments;
    MailSlideShow *slideshow;
    id _delegate;
    NSControl *_saveButton;
    NSButton *_slideshowButton;
    NSMutableSet *_gatekeeperApprovedAttachments;
}

+ (id)newAttachmentsView;
- (void)encodeWithCoder:(id)fp8;
- (id)initWithCoder:(id)fp8;
- (void)awakeFromNib;
- (void)dealloc;
- (void)setDelegate:(id)fp8;
- (BOOL)isFlipped;
- (void)_saveAllAttachments:(id)fp8;
- (void)_saveAttachment:(id)fp8;
- (id)_slideShowCreateIfNecessary:(BOOL)fp8;
- (void)_doSlideShow:(id)fp8;
- (void)_addAttachmentsToIPhoto:(id)fp8;
- (void)_performActionOnAttachments:(id)fp8;
- (void)_configureSaveMenu:(id)fp8;
- (void)_saveButtonWillPopUp:(id)fp8;
- (void)_clearSaveButtonMenu;
- (void)_configureButtons;
- (void)display:(id)fp8;
- (void)prepareToRemoveView;
- (void)showAttachmentsArea:(BOOL)fp8 viewingState:(id)fp12;
- (void)positionSubviews;
- (void)positionSubviewsShowingAttachmentsTextView:(BOOL)fp8;
- (void)dontDrawInSenderImage;
- (void)drawRect:(struct _NSRect)fp8;
- (BOOL)isOpaque;
- (void)saveAllAttachments:(id)fp8;
- (id)attachmentContextMenu;
- (void)textView:(id)fp8 doubleClickedOnCell:(id)fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32;
- (void)textView:(id)fp8 draggedCell:(id)fp12 inRect:(struct _NSRect)fp16 event:(id)fp32 atIndex:(unsigned int)fp36;
- (BOOL)textView:(id)fp8 shouldWriteSelectionToPasteboard:(id)fp12 types:(id)fp16;
- (BOOL)cachedGatekeeperApprovalStatusForAttachment:(id)fp8;
- (void)cacheGatekeeperApprovalStatus:(BOOL)fp8 forAttachment:(id)fp12;
- (void)attachmentsTextViewFrameChanged:(id)fp8;
- (void)viewFrameDidChange:(id)fp8;
- (void)mouseDown:(id)fp8;
- (BOOL)accessibilityIsIgnored;
- (id)accessibilityAttributeValue:(id)fp8;

@end

@interface DisclosureButtonCell : NSButtonCell
{
    NSImage *onStateHighlightImage;
    NSImage *offStateHighlightImage;
    NSImage *intermediateImage;
    int stage;
    BOOL shouldDraw;
    BOOL shouldOpenUpward;
}

- (id)initImageCell:(id)fp8;
- (void)setShouldDrawButton:(BOOL)fp8;
- (void)setShouldOpenUpward:(BOOL)fp8;
- (void)dealloc;
- (void)encodeWithCoder:(id)fp8;
- (id)initWithCoder:(id)fp8;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (BOOL)trackMouse:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 untilMouseUp:(BOOL)fp32;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface DefaultApplicationPopUpButton : NSPopUpButton
{
    NSURL *_appURL;
    int _index;
    NSArray *_schemes;
}

- (id)mainScheme;
- (void)setHandler:(id)fp8 forScheme:(id)fp12;
- (id)imageForURL:(id)fp8;
- (int)addItemToPopup:(id)fp8;
- (void)populateSchemeHandlerPopupWithURL:(id)fp8;
- (id)copyDefaultURLForScheme:(id)fp8;
- (void)selectDefaultMailClientAtIndex:(int)fp8;
- (void)selectItemInPopup:(id)fp8;
- (void)setNewApplication;
- (void)selectNewAppSelected:(id)fp8;
- (void)sheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)configurePopUpForURLSchemes:(id)fp8 usingExampleURLString:(id)fp12;

@end

@interface WebMessageDisplay : WebMessageController <MessageContentDisplay>
{
    NSMutableSet *_gatekeeperApprovedAttachments;
}

+ (void)initialize;
+ (id)copyDocumentForMessage:(id)fp8 viewingState:(id)fp12;
- (void)dealloc;
- (void)documentResized;
- (id)contentView;
- (id)textView;
- (void)display:(id)fp8 inContainerView:(id)fp12 replacingView:(id)fp16;
- (void)prepareToRemoveView;
- (void)highlightSearchText:(id)fp8;
- (id)selectedText;
- (id)selectedWebArchive;
- (id)attachmentsInSelection;
- (id)webArchive;
- (void)adjustFontSizeBy:(int)fp8 viewingState:(id)fp12;
- (id)findTarget;
- (void)updateURLMatches:(id)fp8 viewingState:(id)fp12;
- (BOOL)scrollVerticallyBy:(float)fp8;
- (float)verticalPageScrollDistance;
- (BOOL)cachedGatekeeperApprovalStatusForAttachment:(id)fp8;
- (void)cacheGatekeeperApprovalStatus:(BOOL)fp8 forAttachment:(id)fp12;

@end

@interface WebFrameView (MailExtras)
- (BOOL)_scrollVerticallyBy:(float)fp8;
- (float)_verticalPageScrollDistance;
- (float)_verticalKeyboardScrollDistance;
@end

@interface WebHTMLView (MailExtras)
- (void)takeFindStringFromSelection:(id)fp8;
- (BOOL)findString:(id)fp8 options:(unsigned int)fp12;
- (id)enclosingTilingView;
- (BOOL)autoscroll:(id)fp8;
@end

@interface MessageWebView : WebView
{
}

- (id)initWithFrame:(struct _NSRect)fp8 frameName:(id)fp24 groupName:(id)fp28;
- (void)keyDown:(id)fp8;
- (void)adjustForTilingView:(id)fp8 oldSize:(struct _NSSize)fp12;
- (void)viewWillMoveToSuperview:(id)fp8;
- (void)setFrame:(struct _NSRect)fp8;

@end

@interface ApplescriptEmailImporter : EmailImporter
{
    NSMutableArray *_mailboxArray;
}

+ (id)explanatoryText;
- (id)prepareForImport;
- (id)statusLine;
- (void)readMailbox:(id)fp8 intoURL:(id)fp12;
- (void)importFinished;
- (id)scriptName;
- (id)messageSourceForMessage:(id)fp8;
- (void)processMessageViaApplescript:(int)fp8 url:(id)fp12 currentMailbox:(id)fp16;
- (id)dataForMessageString:(id)fp8;
- (BOOL)topLevelMailboxes;
- (id)subMailboxes:(id)fp8;
- (void)prepareImportArray;
- (void)dealloc;

@end

@interface EmailerEmailImporter : ApplescriptEmailImporter
{
}

+ (id)name;
- (id)preProcessSourceData:(id)fp8;
- (id)scriptName;
- (id)messageSourceForMessage:(id)fp8;
- (id)creatorCode;

@end

@interface EmailImporter : Importer
{
    NSString *_sourceFolderPath;
    NSString *_destinationFolderPath;
    NSString *_attachmentBeingSearchedFor;
    NSString *_lastDirectoryFound;
    NSString *_temporaryImportFolderPath;
    char *_lineDelimiter;
    char *_fromSpaceSeparator;
    NSData *_newline;
    NSData *_greaterThanSign;
    NSData *_fromSpace;
}

- (id)init;
- (void)performImport;
- (void)revealMailbox:(id)fp8;
- (void)importFinished;
- (id)importFinishedText;
- (id)statusLine;
- (void)cleanup;
- (void)readMailbox:(id)fp8 intoURL:(id)fp12;
- (void)processUserSelection;
- (void)importMailbox:(id)fp8;
- (id)preProcessSourceData:(id)fp8;
- (char *)lineDelimiter;
- (id)regexForAttachmentName:(id)fp8;
- (id)destinationFolderPath;
- (id)destinationFolderName;
- (void)setLineDelimiter:(char *)fp8;
- (char *)fromSpaceSeparator;
- (void)setFromSpaceSeparator:(char *)fp8;
- (id)sourceFolder;
- (void)setSourceFolder:(id)fp8;
- (void)appendMessageData:(id)fp8 intoURL:(id)fp12;
- (void)updateSubjectStringForMessageHeaders:(id)fp8;
- (void)convertChar:(BOOL)fp8 toChar:(BOOL)fp12 inBytes:(char *)fp16 length:(int)fp20;
- (id)searchForValidItemInsideDirectory:(id)fp8 validitySelector:(SEL)fp12 searchDepth:(int)fp16;
- (id)regenerateMessageData:(id)fp8 isHTML:(BOOL)fp12 isRich:(BOOL)fp16;
- (id)createAttachmentText:(id)fp8 isHTML:(BOOL)fp12;
- (id)locateAttachments:(id)fp8 inFolder:(id)fp12;
- (id)copyAttachmentsToMailFolder:(id)fp8;
- (id)_newline;
- (id)_greaterThanSign;
- (id)_fromSpace;
- (id)mailboxForImportItem:(id)fp8;
- (void)dealloc;

@end

@interface EntourageEmailImporter : ApplescriptEmailImporter
{
}

+ (id)name;
- (id)creatorCode;

@end

@interface EudoraEmailImporter : FilesystemEmailImporter
{
}

+ (id)name;
+ (id)explanatoryText;
- (char *)fromString;
- (BOOL)isValidMailbox:(id)fp8;
- (id)preProcessSourceData:(id)fp8;
- (struct _NSRange)_rangeOfDataContainedByTag:(char *)fp8 endTag:(char *)fp12 inData:(id)fp16;
- (void)_stripTag:(char *)fp8 fromData:(id)fp12;
- (id)_attachmentsInEudoraMessage:(id)fp8;
- (BOOL)_isAttachmentBeingSearchedFor:(id)fp8;

@end

@interface FilesystemEmailImporter : EmailImporter
{
    char *fromSpaceDelimiter;
}

- (id)prepareForImport;
- (void)processUserSelection;
- (void)readMailbox:(id)fp8 intoURL:(id)fp12;
- (id)pathExtension;
- (char *)fromString;
- (BOOL)isValidMailbox:(id)fp8;
- (void)sniffLineDelimiterFromData:(id)fp8;
- (void)verifyFromSpaceHeaderForScanner:(id)fp8 dataLength:(int)fp12;

@end

@interface Importer : NSObject
{
    ImportAssistant *_delegate;
    NSMutableArray *_importArray;
    NSString *_applicationString;
    NSArray *_importFields;
    int _errorNumber;
    BOOL _importCanceled;
}

+ (id)explanatoryText;
+ (id)name;
- (id)init;
- (id)name;
- (void)setDelegate:(id)fp8;
- (id)delegate;
- (id)importArray;
- (void)clearImportArray;
- (id)importArrayEnumerator;
- (void)addItemToImportArray:(id)fp8;
- (int)countOfEnabledItems;
- (BOOL)importCanceled;
- (void)setImportCanceled:(BOOL)fp8;
- (id)importFields;
- (void)setImportFields:(id)fp8;
- (void)sortArray:(id)fp8;
- (id)statusLine;
- (id)importFinishedText;
- (id)creatorCode;
- (void)cleanup;
- (id)prepareForImport;
- (void)performImport;
- (void)importFinished;
- (void)_runApplescript:(id)fp8 andReturnArray:(id)fp12;
- (id)runApplescript:(id)fp8;
- (id)arrayFromDescriptor:(id)fp8;
- (BOOL)setApplicationString;
- (void)dealloc;

@end

@interface MailEmailImporter : FilesystemEmailImporter
{
}

+ (id)name;
+ (id)explanatoryText;
- (id)pathExtension;
- (BOOL)isValidMailbox:(id)fp8;
- (void)importMailbox:(id)fp8;

@end

@interface MboxEmailImporter : FilesystemEmailImporter
{
}

+ (id)name;
+ (id)explanatoryText;
- (char *)fromString;

@end

@interface NetscapeEmailImporter : FilesystemEmailImporter
{
}

+ (id)name;
+ (id)explanatoryText;
- (id)pathExtension;
- (char *)fromString;

@end

@interface OEEmailImporter : ApplescriptEmailImporter
{
}

+ (id)name;
- (id)creatorCode;

@end

@interface ImportItem : NSObject
{
    BOOL _isEnabled;
    NSString *_displayName;
    float _progressValue;
    NSString *_fullPath;
    NSString *_relativePath;
    int _itemCount;
    id _identifier;
    int _subfolderCount;
    id _importFields;
}

- (BOOL)isEnabled;
- (void)setIsEnabled:(BOOL)fp8;
- (id)displayName;
- (void)setDisplayName:(id)fp8;
- (float)progressValue;
- (void)setProgressValue:(float)fp8;
- (id)fullPath;
- (void)setFullPath:(id)fp8;
- (id)relativePath;
- (void)setRelativePath:(id)fp8;
- (int)itemCount;
- (void)setItemCount:(int)fp8;
- (id)identifier;
- (void)setIdentifier:(id)fp8;
- (int)subfolderCount;
- (void)setSubfolderCount:(int)fp8;
- (id)importFields;
- (void)setImportFields:(id)fp8;

@end

@interface GeneralPreferences : NSPreferencesModule
{
    NSPopUpButton *fetchFrequencyPopup;
    SoundPopUpButton *newMailSoundPopup;
    NSButton *playMailSoundsCheckbox;
    NSString *soundFile;
    DefaultApplicationPopUpButton *defaultMailClientPopUp;
    NSButton *indexDecryptedMessagesButton;
    NSButton *indexTrashButton;
    NSButton *indexJunkButton;
    NSPopUpButton *downloadFolderPopup;
    NSPopUpButton *addInvitationsPopup;
    NSPopUpButton *attachmentDeletionPopup;
    NSButton *syncOtherStuffButton;
    NSButton *syncAccountsButton;
    NSWindow *dotMacSyncingWindow;
}

- (BOOL)isResizable;
- (void)_updateAddInvitationsPopup;
- (void)_addInvitationsBehaviorChanged:(id)fp8;
- (void)awakeFromNib;
- (void)dealloc;
- (id)titleForIdentifier:(id)fp8;
- (id)windowTitle;
- (void)initializeFromDefaults;
- (void)fetchFrequencyChanged:(id)fp8;
- (void)indexDecryptedMessagesButtonClicked:(id)fp8;
- (void)indexTrashButtonClicked:(id)fp8;
- (void)indexJunkButtonClicked:(id)fp8;
- (void)syncingPrefChanged:(id)fp8;
- (void)asynchronouslyTellSyncServicesToEnableSyncing:(BOOL)fp8 forDataType:(int)fp12;
- (void)synchronouslyTellSyncServicesToEnableSyncing:(id)fp8 forDataType:(id)fp12;
- (void)didTellSyncServicesToEnableSyncingForDataType:(id)fp8 success:(id)fp12;
- (void)cancelDotMacSheet:(id)fp8;
- (void)dotMacSyncingSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)showMoreInfoAboutDotMac:(id)fp8;
- (void)showDotMacSystemPrefs:(id)fp8;
- (void)newMailSoundDidChange:(id)fp8;
- (id)titleForSoundFile:(id)fp8;
- (void)playSoundsClicked:(id)fp8;
- (void)_openPanelSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)chooseNewDownloadFolder:(id)fp8;
- (void)addInvitationsPopupChanged:(id)fp8;
- (void)attachmentDeletionPopupChanged:(id)fp8;

@end

@interface MailApp (ApplescriptGeneralPreferences)
- (BOOL)playOtherMailSounds;
- (void)setPlayOtherMailSounds:(BOOL)fp8;
- (id)newMailSoundPath;
- (void)setNewMailSoundPath:(id)fp8;
- (id)newMailSound;
- (void)setNewMailSound:(id)fp8;
- (id)downloadFolderPath;
- (void)setDownloadFolderPath:(id)fp8;
- (BOOL)indexDecryptedMessages;
- (void)setIndexDecryptedMessages:(BOOL)fp8;
@end

@interface JunkPreferences : NSPreferencesModule <SyncableDataInterestedParty>
{
    id _textLabel1;
    id _textLabel2;
    id _advancedButton;
    id _resetButton;
    id _junkMailMode;
    id _junkMailOnOffSwitch;
    id _junkMailWhitelist;
    id _useJunkMailHeaderFlags;
}

- (void)moduleWillBeRemoved;
- (void)moduleWasInstalled;
- (BOOL)isResizable;
- (void)_messageRuleChanged:(id)fp8;
- (id)titleForIdentifier:(id)fp8;
- (id)windowTitle;
- (id)imageForPreferenceNamed:(id)fp8;
- (BOOL)dataWillBeSynced;
- (void)dataWasSynced;
- (void)setAllEnabled:(BOOL)fp8;
- (void)initializeFromDefaults;
- (void)showJunkMailInfoPanel:(id)fp8;
- (void)junkMailToggled:(id)fp8;
- (void)whitelistChanged:(id)fp8;
- (void)setJunkMailBehavior:(int)fp8;
- (void)changeJunkMailBehavior:(id)fp8;
- (void)resetJunkMailMap:(id)fp8;
- (void)showCustomJunkMailSettings:(id)fp8;
- (void)useJunkMailHeaderFlagsToggled:(id)fp8;

@end

@interface AddressLayoutManager : NSLayoutManager
{
    BOOL isDrawingBackground;
}

- (void)drawBackgroundForGlyphRange:(struct _NSRange)fp8 atPoint:(struct _NSPoint)fp16;
- (struct _NSRect *)rectArrayForCharacterRange:(struct _NSRange)fp8 withinSelectedCharacterRange:(struct _NSRange)fp16 inTextContainer:(id)fp24 rectCount:(unsigned int *)fp28;

@end

@interface ExchangeAccountDetails : IMAPAccountDetails
{
}

+ (id)accountDetailsNibName;
- (Class)accountClass;

@end

@interface RolloverButtonCell : MessageListCell
{
    id _target;
    SEL _action;
}

- (void)setTarget:(id)fp8;
- (void)setAction:(SEL)fp8;
- (id)target;
- (SEL)action;
- (BOOL)trackMouse:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 untilMouseUp:(BOOL)fp32;
- (void)_sendActionFrom:(id)fp8;
- (id)accessibilityAttributeNames;
- (id)accessibilityActionNames;
- (id)accessibilityAttributeValue:(id)fp8;
- (void)accessibilityPerformAction:(id)fp8;
- (id)accessibilityActionDescription:(id)fp8;

@end

@interface TableHeaderView : NSTableHeaderView
{
    BOOL _noSeparatorLines;
}

+ (id)updateHeaderViewForTableView:(id)fp8;
- (BOOL)drawsSeparatorLines;
- (void)setDrawsSeparatorLines:(BOOL)fp8;
- (BOOL)_drawingEndSeparator;

@end

@interface ThreadDisplay : NSObject <MessageContentDisplay>
{
    NSView *contentView;
    NSTextField *subjectField;
    NSTextField *originatorField;
    NSTextField *countsField;
    ASExtendedTableView *summaryTable;
    MessageThread *_thread;
    NSMutableArray *_messages;
    NSMutableDictionary *_attributes;
    float _deltaY;
    unsigned int _currentRow:16;
    unsigned int _enterCount:16;
    struct __CFSet *_trackingRectTags;
}

+ (id)copyDocumentForMessage:(id)fp8 viewingState:(id)fp12;
- (void)awakeFromNib;
- (void)dealloc;
- (id)contentView;
- (id)textView;
- (void)_resetTrackingRectsForTableView:(id)fp8;
- (void)_adjustViewHeightsIncludingRoundedView:(BOOL)fp8;
- (void)_adjustColumnsBasedOnTableManager:(id)fp8;
- (BOOL)_updateFlagsColumnWidth;
- (BOOL)_updateContentsColumnWidth;
- (void)_updateFlagsColumnWidth:(BOOL)fp8 updateContentsColumn:(BOOL)fp12;
- (void)_reloadMessages;
- (void)_mallStructureChanged:(id)fp8;
- (void)_messageFlagsChanged:(id)fp8;
- (void)_mallSortChanged:(id)fp8;
- (void)_tableSuperviewFrameChanged:(id)fp8;
- (void)_tableViewScrolled:(id)fp8;
- (void)_datesNeedRedisplay;
- (void)_windowDidBecomeKey:(id)fp8;
- (void)_windowDidResignKey:(id)fp8;
- (void)display:(id)fp8 inContainerView:(id)fp12 replacingView:(id)fp16;
- (void)prepareToRemoveView;
- (void)highlightSearchText:(id)fp8;
- (id)selectedText;
- (id)selectedWebArchive;
- (id)attachmentsInSelection;
- (id)webArchive;
- (void)adjustFontSizeBy:(int)fp8 viewingState:(id)fp12;
- (id)findTarget;
- (void)updateURLMatches:(id)fp8 viewingState:(id)fp12;
- (id)_colorForMessage:(id)fp8;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (BOOL)tableView:(id)fp8 shouldSelectRow:(int)fp12;
- (void)_updateCurrentRow:(id)fp8;
- (void)mouseEntered:(id)fp8;
- (void)mouseExited:(id)fp8;
- (void)tableView:(id)fp8 willMoveToWindow:(id)fp12;
- (void)tableViewDidMoveToWindow:(id)fp8;

@end

@interface ClickableCell : NSTextFieldCell
{
}

- (id)accessibilityActionNames;
- (id)accessibilityAttributeValue:(id)fp8;
- (void)accessibilityPerformAction:(id)fp8;

@end

@interface RoundedView : NSView
{
    NSColor *_backgroundColor;
    NSColor *_borderColor;
}

- (BOOL)isFlipped;
- (void)dealloc;
- (void)drawRect:(struct _NSRect)fp8;
- (id)backgroundColor;
- (void)setBackgroundColor:(id)fp8;
- (id)borderColor;
- (void)setBorderColor:(id)fp8;
- (BOOL)accessibilityIsIgnored;

@end

@interface WebMessageController : NSObject
{
    WebMessageDocument *_document;
    MessageWebView *_webView;
    NSView *_mainFrameDocumentView;
}

+ (id)viewForDocument:(id)fp8;
- (id)initWithDocument:(id)fp8;
- (void)setWebView:(id)fp8;
- (id)webView;
- (id)document;
- (void)documentResized;
- (BOOL)hasFinishedLoading;
- (void)stopLoading;
- (void)dealloc;
- (void)adjustFontSizeBy:(int)fp8;
- (void)refreshWithViewingState:(id)fp8;
- (id)mainFrameDocumentView;
- (void)setMainFrameDocumentView:(id)fp8;
- (void)_openLink:(id)fp8;
- (void)_openLinkBehind:(id)fp8;
- (void)webView:(id)fp8 didFinishLoadForFrame:(id)fp12;

@end

@interface MessageTextView (WebAttachmentSupport)
- (void)adjustPageHeightNew:(float *)fp8 top:(float)fp12 bottom:(float)fp16 limit:(float)fp20;
@end

@interface WebMessageController (WebViewDelegateMethods)
- (BOOL)considerBaseURLsInternal;
- (void)webView:(id)fp8 decidePolicyForNavigationAction:(id)fp12 request:(id)fp16 frame:(id)fp20 decisionListener:(id)fp24;
- (void)webView:(id)fp8 decidePolicyForNewWindowAction:(id)fp12 request:(id)fp16 newFrameName:(id)fp20 decisionListener:(id)fp24;
- (id)webView:(id)fp8 identifierForInitialRequest:(id)fp12 fromDataSource:(id)fp16;
- (id)webView:(id)fp8 resource:(id)fp12 willSendRequest:(id)fp16 redirectResponse:(id)fp20 fromDataSource:(id)fp24;
- (void)webView:(id)fp8 didStartProvisionalLoadForFrame:(id)fp12;
- (void)webView:(id)fp8 didCommitLoadForFrame:(id)fp12;
- (void)webView:(id)fp8 didFailProvisionalLoadWithError:(id)fp12 forFrame:(id)fp16;
- (id)webView:(id)fp8 contextMenuItemsForElement:(id)fp12 defaultMenuItems:(id)fp16;
- (void)download:(id)fp8 decideDestinationWithSuggestedFilename:(id)fp12;
@end

@interface NSTextView (WebAttachmentSupport)
- (id)webControllers;
- (float)desiredWidth;
@end

@interface CertificatePanelController : NSObject
{
    NSPanel *panel;
    SFCertificateView *certificateView;
    NSTextField *titleField;
    NSTextField *messageField;
    NSButton *rememberChanges;
    NSScrollView *scrollView;
    struct _NSRect lastScrollViewFrame;
    struct _NSRect lastPanelFrame;
    struct _NSSize minSizeWithDetail;
    struct _NSSize minSizeWithoutDetail;
}

- (void)orderOutPanel:(id)fp8;
- (void)toggleCertificateView:(id)fp8;
- (id)_findButtonInViews:(id)fp8 withAction:(SEL)fp12;
- (BOOL)runModalForError:(id)fp8 certificate:(struct OpaqueSecCertificateRef *)fp12 rememberDecision:(char *)fp16;

@end

@interface EncryptionErrorPanelController : NSObject
{
    NSPanel *panel;
    SFCertificateView *certificateView;
    NSTextField *titleField;
    NSTextField *messageField;
    NSScrollView *scrollView;
}

- (void)endSheet:(id)fp8;
- (void)sheetEnded:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)runModalForError:(id)fp8 certificate:(struct OpaqueSecCertificateRef *)fp12 emailAddress:(id)fp16 modalForWindow:(id)fp20;

@end

@interface ImagePopUpButtonCell : NSPopUpButtonCell
{
    NSImage *image;
    NSImage *alternateImage;
    NSImage *inactiveImage;
}

- (void)dealloc;
- (float)_extraWidthForCellHeight:(float)fp8;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawBorderAndBackgroundWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)setImage:(id)fp8;
- (id)image;
- (void)setAlternateImage:(id)fp8;
- (id)alternateImage;
- (void)setInactiveImage:(id)fp8;
- (id)inactiveImage;

@end

@interface TransferOperation : NSObject
{
    MessageStore *sourceStore;
    MailboxUid *destinationMailboxUid;
    NSMutableArray *sourceMessages;
    NSMutableArray *destinationMessageIDs;
}

- (void)dealloc;
- (id)initWithSourceStore:(id)fp8 destinationMailboxUid:(id)fp12;
- (id)sourceLibraryStore;
- (id)destinationMailboxUid;

@end

@interface MessageTransfer : NSObject
{
    id _delegate;
    NSMutableArray *_operations;
    BOOL _deleteOriginals;
    BOOL _registeredForUndo;
}

+ (void)_undo:(id)fp8;
+ (void)_redo:(id)fp8;
- (void)dealloc;
- (id)initWithMessages:(id)fp8 targetMailboxUid:(id)fp12;
- (id)delegate;
- (void)setDelegate:(id)fp8;
- (BOOL)deleteOriginals;
- (void)setDeleteOriginals:(BOOL)fp8;
- (void)beginTransfer;
- (void)_completedTransferWithError:(id)fp8;
- (void)_undo;
- (void)_redo;
- (void)_synchronouslyPerformTransfer;
- (id)destinationMailboxes;

@end

@interface ActivityProgressPanel : NSObject
{
    NSPanel *_progressPanel;
    NSProgressIndicator *_progressBar;
    NSTextField *_statusMessage;
    ActivityMonitor *_monitor;
    NSTimer *_timer;
}

- (id)init;
- (void)_invalidateTimer;
- (void)dealloc;
- (void)setActivityMonitor:(id)fp8;
- (id)activityMonitor;
- (void)setStatusMessage:(id)fp8;
- (id)statusMessage;
- (id)panel;
- (void)_updateProgressBar;
- (void)activityStarted:(id)fp8;
- (void)activityEnded:(id)fp8;
- (void)cancel:(id)fp8;

@end

@interface NSTextStorage (AttachmentAttrFixCategory)
- (void)fixAttributesInRange:(struct _NSRange)fp8;
@end

@interface AccountSetupAssistant : Assistant
{
    NSView *_topView;
    NSTabView *_tabView;
    NSTextField *_fullname;
    NSTextField *_emailAddress;
    NSTextField *_accountDescription;
    NSPopUpButton *_accountTypePopup;
    NSImageView *_fullnameInavlidImage;
    NSImageView *_emailInavlidImage;
    NSImageView *_accountDescriptionInavlidImage;
    NSTextField *_userInfoVerificationStatus;
    NSImageView *_userInfoCautionImage;
    NSTabView *_tabViewForUserInfoSubviews;
    NSTextField *_ispUsername;
    NSTextField *_ispPassword;
    NSTextField *_ispDomain;
    NSImageView *_ispUsernameInavlidImage;
    NSImageView *_ispPasswordInavlidImage;
    NSProgressIndicator *_ispVerificationProgress;
    NSTextField *_incomingServer;
    NSTextField *_username;
    NSTextField *_password;
    NSTextField *_outlookServer;
    NSTextField *_outlookServerLabel;
    NSTextField *_outlookServerExampleText;
    NSImageView *_incomingServerInavlidImage;
    NSImageView *_usernameInavlidImage;
    NSImageView *_passwordInavlidImage;
    NSImageView *_outlookServerInavlidImage;
    NSTextField *_incomingServerVerificationStatus;
    NSProgressIndicator *_incomingServerVerificationProgress;
    NSImageView *_incomingServerCautionImage;
    NSButton *_incomingUseSSLCheckbox;
    NSPopUpButton *_incomingAuthPopup;
    NSTextField *_incomingAuthPopupLabel;
    NSTextField *_incomingSecurityMessage;
    NSImageView *_incomingSecurityCautionImage;
    NSTextField *_incomingServerDomainLabel;
    NSTextField *_incomingServerDomain;
    NSComboBox *_smtpServerComboBox;
    NSButton *_smtpAuthenticateCheckbox;
    NSTextField *_smtpUsername;
    NSTextField *_smtpPassword;
    NSImageView *_smtpServerInavlidImage;
    NSTextField *_smtpServerVerificationStatus;
    NSProgressIndicator *_smtpServerVerificationProgress;
    NSImageView *_smtpServerCautionImage;
    NSButton *_smtpUseSSLCheckbox;
    NSPopUpButton *_smtpAuthPopup;
    NSTextField *_smtpAuthPopupLabel;
    NSTextField *_smtpSecurityMessage;
    NSImageView *_smtpSecurityCautionImage;
    NSTextField *_smtpServerDomainLabel;
    NSTextField *_smtpServerDomain;
    NSView *_summaryContainerView;
    AccountSummary *_summary;
    NSButton *_importMailboxesButton;
    NSButton *_createAnotherAccountButton;
    NSMutableArray *_previousTabs;
    NSMutableDictionary *_validationResults;
    NSMutableArray *_tabViewItemsThatHaveBeenInitialized;
    MailAccount *_account;
    SMTPAccount *_smtpAccount;
    ActivityMonitor *_accountValidationActivity;
    struct {
        unsigned int isForStartup:1;
        unsigned int incomingServerSupportsSSL:1;
        unsigned int smtpServerSupportsSSL:1;
        unsigned int smtpServerComboBoxSelectionChanged:1;
        unsigned int smtpServerComboBoxHasNoServer:1;
        unsigned int overrideISPSMTPPort:1;
    } _flags;
    MFError *_incomingServerValidationError;
    MFError *_smtpServerValidationError;
    NSArray *_incomingServerAuthSchemes;
    NSArray *_smtpServerAuthSchemes;
    NSMutableArray *_deliveryAccounts;
}

- (id)initWithAssistentManager:(id)fp8 isForStartup:(BOOL)fp12;
- (void)dealloc;
- (id)windowTitle;
- (void)start;
- (void)stop;
- (void)goForward;
- (void)goBackward;
- (void)setupKeyViewLoop;
- (void)_goForward;
- (void)_goBackward;
- (int)_tabIndexOfSelectedTabViewItem;
- (Class)_accountClass;
- (id)_ispAccountInfo;
- (BOOL)_shouldSkipIncomingServerTabForSelectedAccount;
- (BOOL)_shouldSkipIncomingSecurityTabForSelectedAccountBasedOnISPInfo:(id)fp8;
- (BOOL)_shouldSkipOutgoingServerTabForSelectedAccount;
- (BOOL)_incomingServerValid;
- (BOOL)_outgoingServerValid;
- (void)_addTheNewAccount;
- (void)_updateSMTPUserPasswordEditableState;
- (void)_updateUserInfoDynamicUI;
- (void)_updateSSLUIForTab:(int)fp8;
- (void)_updateDomainUIForTab:(int)fp8;
- (id)_statusViewsInTabAtIndex:(int)fp8;
- (void)_layoutStatusViewsInTabAtIndex:(int)fp8;
- (int)numberOfItemsInComboBox:(id)fp8;
- (id)comboBox:(id)fp8 objectValueForItemAtIndex:(int)fp12;
- (void)_configureSMTPComboBoxItmes;
- (BOOL)_initializeTabAtIndex:(int)fp8;
- (int)_nextTabOf:(int)fp8;
- (int)_previousTab;
- (void)_setupBackForwardCancelButtons;
- (void)_setupTabAtIndex:(int)fp8;
- (void)_setupKeyViewLoopForTabAtIndex:(int)fp8;
- (void)_setupHelpButton;
- (void)_selectTabAtIndex:(int)fp8 update:(BOOL)fp12;
- (id)_account;
- (id)_smtpAccount;
- (void)_invalidateItem:(id)fp8;
- (void)_setValidationResult:(BOOL)fp8 error:(id)fp12 forItem:(id)fp16 withValue:(id)fp20;
- (BOOL)_needToValidateItem:(id)fp8 withValue:(id)fp12 valid:(char *)fp16 error:(id *)fp20;
- (void)_configureAccount:(id)fp8 withISPInfo:(id)fp12;
- (void)_configureSMTPAccountWithISPInfo:(id)fp8 withUsername:(id)fp12 andPassword:(id)fp16;
- (void)_updateAccountInfoFromValuesInTabAtIndex:(int)fp8;
- (void)_validateAccountInBackground:(id)fp8;
- (void)_updateValidationStatusForAccount:(id)fp8 status:(id)fp12;
- (void)_backgroundValidateAccountFinished:(id)fp8 authSchemes:(id)fp12;
- (BOOL)_validateValesInTabAtIndex:(int)fp8;
- (void)accountTypeChanged:(id)fp8;
- (void)smtpAuthenticateCheckboxChanged:(id)fp8;
- (void)smtpComboBoxDidEndEditing:(id)fp8;
- (void)importMailboxes:(id)fp8;
- (void)createAnotherAccount:(id)fp8;
- (void)authenticationPopupChanged:(id)fp8;
- (BOOL)doNotShowActivityStatusInMessageViewer;
- (void)_validateAccount:(id)fp8;
- (void)_reset;
- (void)comboBoxSelectionDidChange:(id)fp8;

@end

@interface NSString (EmailAddressStringAdditions)
- (id)emailAddressUser;
@end

@interface Assistant : NSObject
{
    NSView *_parentView;
    NSButton *_backButton;
    NSButton *_forwardButton;
    NSButton *_cancelButton;
    HelpButton *_helpButton;
    id _delegate;
}

- (id)initWithAssistentManager:(id)fp8;
- (void)dealloc;
- (void)setDelegate:(id)fp8;
- (void)start;
- (void)stop;
- (void)goForward;
- (void)goBackward;
- (void)weAreDone;
- (id)windowTitle;
- (void)setupKeyViewLoop;

@end

@interface AssistantManager : NSObject
{
    NSWindow *_window;
    NSView *_assistantContainerView;
    NSButton *_backButton;
    NSButton *_forwardButton;
    NSButton *_cancelButton;
    HelpButton *_helpButton;
    int _type;
    Assistant *_assistant;
}

+ (void)openAssistantOfType:(int)fp8 modalForWindow:(id)fp12;
+ (void)openStartupAssistant;
- (id)_createAssistantOfType:(int)fp8;
- (id)init;
- (void)_setAssistant:(id)fp8;
- (id)_initWithType:(int)fp8;
- (void)dealloc;
- (id)assistantContainerView;
- (id)backButton;
- (id)forwardButton;
- (id)cancelButton;
- (id)helpButton;
- (void)back:(id)fp8;
- (void)forward:(id)fp8;
- (void)cancel:(id)fp8;
- (void)_start;
- (void)_showInWindow:(id)fp8;
- (void)_windowDidBecomeKey:(id)fp8;
- (void)_sheetWillBegin:(id)fp8;
- (void)_sheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)_terminate;
- (void)assistantDidFinish:(id)fp8;
- (void)windowWillClose:(id)fp8;

@end

@interface TransparentImageView : NSImageView
{
    NSView *_backgroundView;
}

- (void)drawRect:(struct _NSRect)fp8;
- (void)awakeFromNib;
- (id)accessibilityAttributeValue:(id)fp8;

@end

@interface NSBezierPath (MailAdditions)
+ (id)roundedRectPathInRect:(struct _NSRect)fp8 radius:(float)fp24;
@end

@interface ImportAssistant : Assistant
{
    NSView *_topView;
    NSTabView *_tabView;
    NSMatrix *_importClients;
    NSTextField *_importHeaderText;
    NSTextField *_explanatoryTextInImportClientTab;
    NSProgressIndicator *_progressWheelInImportClientTab;
    NSTextField *_statusLineInImportClientTab;
    NSMatrix *_importTypes;
    NSTextField *_explanatoryText;
    NSProgressIndicator *_progressWheel;
    NSTextField *_statusLine;
    NSTableView *_tableView;
    NSProgressIndicator *_progressBar;
    NSTextField *_textFieldAbove;
    NSTextField *_textFieldBelow;
    NSTextField *_importFinished;
    NSArray *_clients;
    NSDictionary *_client;
    int currentTab;
    id _importer;
    NSMutableArray *_importers;
    NSMutableArray *_startingImporters;
    double _currentTime;
    double _referenceTime;
    double _interval;
}

- (id)initWithAssistentManager:(id)fp8;
- (id)windowTitle;
- (void)start;
- (void)stop;
- (void)goForward;
- (void)goBackward;
- (void)importClientSelected:(id)fp8;
- (void)createNewImporter;
- (void)runImporter;
- (void)presentAlertSheetWithString:(id)fp8;
- (void)moveToTab:(int)fp8;
- (void)importFinished;
- (void)askForMailboxLocation;
- (void)openPanelSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)setStatusLine:(id)fp8;
- (void)clearStatusLine;
- (void)updateTextField:(id)fp8 withValue:(id)fp12;
- (void)setTextFieldAbove:(id)fp8;
- (void)setTextFieldBelow:(id)fp8;
- (void)setExplanatoryText:(id)fp8;
- (void)reloadTableView;
- (void)initializeProgressIndicator;
- (void)_updateProgressIndicatorByValue:(id)fp8;
- (void)updateProgressIndicatorWithItem:(id)fp8;
- (void)updateProgressIndicatorByValue:(float)fp8;
- (BOOL)shouldUpdateTextFields;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)tableView:(id)fp8 setObjectValue:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (id)tableView:(id)fp8 toolTipForCell:(id)fp12 rect:(struct _NSRect *)fp16 tableColumn:(id)fp20 row:(int)fp24 mouseLocation:(struct _NSPoint)fp28;
- (void)tableView:(id)fp8 didClickTableColumn:(id)fp12;
- (void)dealloc;

@end

@interface StartupManager : NSObject
{
}

+ (id)sharedManager;
- (id)_setupAccountType:(int)fp8 hostname:(id)fp12 username:(id)fp16 password:(id)fp20 emailAddress:(id)fp24 fullUserName:(id)fp28 smtp:(id)fp32 outlookWebSever:(id)fp36 synchronize:(BOOL)fp40;
- (BOOL)runStartupPanel;
- (BOOL)setupAccountsAndSynchronize:(BOOL)fp8;

@end

@interface AccountInfo : NSObject
{
    NSWindow *_window;
    NSView *_topView;
    NSTabView *_tabView;
    NSPopUpButton *_accountPopup;
    NSView *_notApplicableView;
    AccountSummary *_summary;
    SpecialMailboxes *_specialMailboxes;
    NSView *_specialMailboxesView;
    Quota *_quota;
    MailAccount *_account;
    NSMutableSet *_tabViewItemsThatHaveBeenSetup;
    NSView *_oldView;
    struct _NSSize _oldWindowSize;
    struct _NSSize _oldWindowMinSize;
}

+ (void)show;
- (id)initWithMailAccount:(id)fp8;
- (void)dealloc;
- (void)_configureAccountPopupSelectingAccount:(id)fp8;
- (id)_selectedAccount;
- (void)_setAccount:(id)fp8 setupSelectedTab:(BOOL)fp12;
- (void)_setupTabViewItem:(id)fp8 oldTabViewItem:(id)fp12;
- (void)_commitSpecialMailboxesChanges;
- (void)_accountsDidChange:(id)fp8;
- (void)_specialMailboxesDidChange:(id)fp8;
- (void)_show;
- (void)accountPopupChanged:(id)fp8;
- (void)tabView:(id)fp8 willSelectTabViewItem:(id)fp12;
- (void)windowWillClose:(id)fp8;

@end

@interface ImageTextFieldAlertTrackingCell : NSTextFieldCell
{
    NSImage *_image;
    struct MVAlertStateImageNames *_alertImages;
    BOOL _isRolledOver;
    BOOL _isClickedOn;
    BOOL _useLargeIconsIfPossible;
    BOOL isSelected;
    BOOL isOffline;
    int _progressIndicatorType;
    struct _NSRect _trackingRect;
    id item;
    int progressIndicatorImageIndex;
    float progressIndicatorPercentDone;
    int unreadCount;
    int _alertState;
}

+ (int)minimumHeight;
- (id)initImageCell:(id)fp8;
- (void)dealloc;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (void)setImage:(id)fp8;
- (id)image;
- (BOOL)hasAlertImages;
- (void)setItem:(id)fp8;
- (void)showProgressIndicator:(BOOL)fp8 percentDone:(float)fp12;
- (void)setUnreadCount:(int)fp8;
- (void)setAlertStateImages:(struct MVAlertStateImageNames)fp8 forAlertState:(int)fp40;
- (void)setAlertState:(int)fp8;
- (int)alertState;
- (void)setIsOffline:(BOOL)fp8;
- (BOOL)isOffline;
- (void)setIsRolledOver:(BOOL)fp8;
- (BOOL)isRolledOver;
- (void)setAllowLargeIcons:(BOOL)fp8;
- (id)highlightColorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (struct _NSSize)cellSize;
- (int)unreadBadgeHeight;
- (int)unreadBadgeRadius;
- (int)unreadBadgeMargins;
- (int)unreadBadgeWidthForSingleDigit;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)setUpTextAttributes;
- (void)viewerPreferencesChanged;
- (void)editWithFrame:(struct _NSRect)fp8 inView:(id)fp24 editor:(id)fp28 delegate:(id)fp32 event:(id)fp36;
- (void)selectWithFrame:(struct _NSRect)fp8 inView:(id)fp24 editor:(id)fp28 delegate:(id)fp32 start:(int)fp36 length:(int)fp40;
- (BOOL)trackMouse:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 untilMouseUp:(BOOL)fp32;
- (BOOL)continueTracking:(struct _NSPoint)fp8 at:(struct _NSPoint)fp16 inView:(id)fp24;
- (void)_sendActionFrom:(id)fp8;
- (struct _NSRect)trackingRectForCellFrame:(struct _NSRect)fp8 item:(id)fp24;
- (id)accessibilityAttributeNames;
- (id)accessibilityAttributeValue:(id)fp8;

@end

@interface SpecialMailboxes : NSObject
{
    NSView *_view;
    NSPopUpButton *_sentMessagesAgePopup;
    NSPopUpButton *_junkAgePopup;
    NSPopUpButton *_trashAgePopup;
    NSButton *_trashCheckbox;
}

+ (id)specialMailboxesForAccountClass:(Class)fp8;
- (void)dealloc;
- (void)awakeFromNib;
- (id)view;
- (void)setupUIFromValuesInAccount:(id)fp8;
- (BOOL)setupAccountFromValuesInUI:(id)fp8;
- (BOOL)isAccountInformationDirty:(id)fp8;
- (void)setUIElementsEnabled:(BOOL)fp8;
- (BOOL)moveDeletedMailToTrash;
- (void)postSpecialMailboxesDidChangeNotification:(id)fp8;
- (void)moveToTrashClicked:(id)fp8;

@end

@interface IMAPAccountSpecialMailboxes : SpecialMailboxes
{
    NSButton *_keepDraftsOnServer;
    NSButton *_keepSentMessagesOnServer;
    NSButton *_keepTrashOnServer;
    NSButton *_keepJunkOnServer;
}

- (id)init;
- (void)setupUIFromValuesInAccount:(id)fp8;
- (BOOL)setupAccountFromValuesInUI:(id)fp8;
- (BOOL)isAccountInformationDirty:(id)fp8;
- (void)setUIElementsEnabled:(BOOL)fp8;
- (void)moveToTrashClicked:(id)fp8;

@end

@interface POPAccountSpecialMailboxes : SpecialMailboxes
{
}

- (id)init;
- (BOOL)setupAccountFromValuesInUI:(id)fp8;

@end

@interface Quota : NSObject
{
    NSView *_view;
    SizeEngine *_sizeEngine;
    NSTimer *_statusTimer;
}

+ (id)quotaForMailAccount:(id)fp8;
- (void)dealloc;
- (id)account;
- (id)view;
- (void)refresh;
- (void)engineDidStart;
- (void)engineDidFinish;
- (void)updateProgress:(id)fp8;
- (void)_updateProgress:(id)fp8;
- (void)_stopProgress:(id)fp8;
- (void)engineUpdated:(id)fp8;
- (unsigned int)numberOfSortDescriptors;
- (const struct _QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned int)fp8;
- (void)accountInfoWillHideView:(id)fp8;
- (void)accountInfoWillShowView:(id)fp8;

@end

@interface QuotaBar : NSView
{
    NSLevelIndicator *_levelIndicator;
}

- (id)_labelFont;
- (id)initWithFrame:(struct _NSRect)fp8;
- (void)dealloc;
- (void)setQuotaUsed:(unsigned long long)fp8 limit:(unsigned long long)fp16;
- (void)drawRect:(struct _NSRect)fp8;
- (id)accessibilityAttributeNames;
- (id)accessibilityAttributeValue:(id)fp8;

@end

@interface AccountSummary : NSObject
{
    NSView *_view;
    NSTextField *_accountDescription;
    NSTextField *_fullname;
    NSTextField *_emailAddress;
    NSTextField *_userName;
    NSTextField *_incomingServer;
    NSTextField *_incomingServerSSLMode;
    NSTextField *_outgoingServer;
    NSTextField *_outgoingServerSSLMode;
    NSTextField *_outlookServer;
    NSTextField *_outlookServerLabel;
}

- (id)init;
- (void)setupUIWithAccount:(id)fp8 deliveryAccount:(id)fp12;
- (void)setupUIWithAccount:(id)fp8;
- (id)view;

@end

@interface ConnectionDoctor : NSObject
{
    NSTableView *_tableView;
    NSImageView *_internetStatusIndicator;
    NSProgressIndicator *_internetStatusProgressIndicator;
    NSTextField *_internetStatusField;
    NSButton *_checkStatusButton;
    NSButton *_assistMeButton;
    NSTextView *_ispInfoField;
    NSMutableArray *_accounts;
    NSMutableDictionary *_progressIndicators;
    NSMutableDictionary *_statusMessages;
    NSMutableDictionary *_results;
    struct __CFNetDiagnostic *netDiagnostics;
}

+ (id)sharedInstance;
- (void)dealloc;
- (void)awakeFromNib;
- (void)checkInternetStatus;
- (void)checkInternetStatusFinishedWithResult:(id)fp8;
- (void)_checkAccountStatus;
- (void)_updateConnectionStatusWithInfo:(id)fp8;
- (void)checkAccountStatusFinishedWithResult;
- (void)checkAccounts:(id)fp8;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (void)tableViewSelectionDidChange:(id)fp8;
- (void)show;
- (void)doubleClickAction:(id)fp8;
- (void)assistMeClicked:(id)fp8;

@end

@interface ProgressIndicatorCell : NSImageCell
{
    NSProgressIndicator *_progressIndicator;
}

- (void)setProgressIndicator:(id)fp8;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)dealloc;

@end

@interface VerticallyCenteredTextFieldCell : NSTextFieldCell
{
}

- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface ImageResizer : NSObject
{
    NSData *_sourceData;
    NSString *_sourceFilename;
    unsigned int _sourceFileType;
    id _representedObject;
    struct _NSRect _maxBounds;
    unsigned long _maxFileBytes;
    struct _NSSize _sourceSize;
    struct _NSSize _destSize;
    struct PointerDataRefRecord **_dataRef;
    struct ComponentInstanceRecord *_importer;
    struct ComponentInstanceRecord *_exporter;
    struct UserDataRecord **_userDataHandle;
    char **_colorProfile;
    BOOL _notThreadSafe;
    NSData *_resultData;
    ActivityMonitor *_monitor;
}

+ (void)initialize;
+ (BOOL)isFileResizableImage:(id)fp8;
+ (struct _NSSize)scaleSize:(struct _NSSize)fp8 toFitSize:(struct _NSSize)fp16;
- (id)initWithImageData:(id)fp8 sourceFilename:(id)fp12 sourceFileType:(unsigned long)fp16;
- (void)dealloc;
- (void)setRepresentedObject:(id)fp8;
- (id)representedObject;
- (void)setMaxImageSize:(struct _NSSize)fp8;
- (struct _NSSize)maxImageSize;
- (void)setMaxFileBytes:(unsigned int)fp8;
- (unsigned int)maxFileBytes;
- (id)sourceFilename;
- (void)resizeImage;
- (BOOL)isResizing;
- (void)cancel;
- (id)resultFileExtension;
- (unsigned long)resultFileType;
- (id)resultImageData;
- (struct _NSSize)resultImageSize;
- (void)_didFinishResizingWithResultCode:(int)fp8;
- (void)_resizeImage;
- (void)_getUserData;
- (BOOL)_prepareSourceData;
- (BOOL)_createImporter;
- (BOOL)_prepareImporter;
- (void)_getExportTypeFromImporterOnMainThread:(unsigned int *)fp8;
- (BOOL)_createExporter;
- (BOOL)_prepareExporter;
- (void)_releaseDataRef;
- (void)_releaseImporter;
- (void)_releaseExporter;
- (void)_releaseUserData;
- (void)_releaseColorProfile;

@end

@interface SmartMailboxEditor : NSObject
{
    MailboxUid *mailboxBeingEdited;
    MailboxUid *mailboxBeingValidated;
    CriteriaUIHelper *criteriaUIHelper;
    NSTextField *nameField;
    NSTextField *groupNameField;
    NSTextField *searchStringField;
    NSTextView *mailboxesTextView;
    BOOL editedMailboxIsNew;
}

+ (BOOL)isEditingInProgress;
+ (BOOL)mailboxIsEditable:(id)fp8;
- (void)dealloc;
- (void)editSmartMailbox:(id)fp8 suggestedName:(id)fp12 isNew:(BOOL)fp16;
- (void)createNewMailboxGroup;
- (void)sheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)okClicked:(id)fp8;
- (void)alertDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)cancelClicked:(id)fp8;
- (void)saveEditedMailbox;

@end

@interface CriteriaUIHelper : NSObject
{
    NSMutableArray *criteriaViews;
    NSMutableArray *criteriaGuesses;
    NSTextField *nameField;
    NSScrollView *criteriaContainer;
    NSPopUpButton *allCriteriaMustBeMetPopUp;
    NSButton *includeTrashCheckbox;
    NSButton *includeSentCheckbox;
    NSTextField *performActionLabel;
    NSScrollView *actionContainer;
    NSPopUpButton *smartMailboxesCriterionPopUp;
    NSNumberFormatter *smartMailboxesNumberFormatter;
    id loadedView;
    NSMenu *sizeQualifierMenu;
    NSMenu *dateQualifierMenu;
    NSMenu *mailboxesQualifierMenu;
    id expressionNumberView;
    id expressionDateView;
    NSMutableArray *headerList;
    NSMenu *qualifierMenu;
    NSMenu *accountOrGroupMenu;
    struct _NSRect defaultCriterionPopupFrame;
    struct _NSRect defaultQualifierPopupFrame;
    struct _NSRect defaultExpressionFieldFrame;
    NSPanel *headerListPanel;
    NSTableView *headerListTable;
    NSButton *addHeaderButton;
    NSButton *removeHeaderButton;
    BOOL isEditingHeader;
    BOOL criteriaWillBeUsedForMailboxes;
    BOOL includeNoJunkCriterion;
    id _objectWithCriteria;
}

+ (id)noJunkCriterion;
+ (id)noTrashCriterion;
+ (id)noSentCriterion;
+ (id)packageUserCriteria:(id)fp8 withNoJunk:(BOOL)fp12 noTrash:(BOOL)fp16 noSent:(BOOL)fp20 allUserCriteriaMustBeSatisfied:(BOOL)fp24;
+ (void)unpackUserCriteria:(id *)fp8 noJunkCriterion:(id *)fp12 noTrashCriterion:(id *)fp16 noSentCriterion:(id *)fp20 allCriteriaMustBeSatisfield:(char *)fp24 fromCriteria:(id)fp28;
- (void)dealloc;
- (void)awakeFromNib;
- (void)setCriteriaWillBeUsedForMailboxes:(BOOL)fp8;
- (void)putCriteriaFromUIIntoObject:(id)fp8;
- (id)subcriteriaForRelativeDatesFrom:(int)fp8 to:(int)fp12 units:(int)fp16 criterionType:(int)fp20;
- (void)configureCriteriaForObject:(id)fp8;
- (void)configureCriterionView:(id)fp8;
- (void)reorderSubviewsOfCriterionView:(id)fp8;
- (id)specificationKeyForView:(id)fp8;
- (id)subviewForString:(id)fp8 inView:(id)fp12;
- (void)addCriterion:(id)fp8;
- (void)removeCriterion:(id)fp8;
- (void)removeView:(id)fp8 fromViews:(id)fp12 inContainer:(id)fp16;
- (void)criterionPopupWillPopup:(id)fp8;
- (void)criterionPopupChanged:(id)fp8;
- (void)qualifierPopupChanged:(id)fp8;
- (void)configureDateQualifierExpressionViewsInView:(id)fp8;
- (void)layOutUnitsAndDateFieldsInCriterionView:(id)fp8;
- (void)configureAllCriterionMenus;
- (void)_fixupLocalizedCriteriaInPopUp:(id)fp8;
- (void)configureCriterionPopupMenu:(id)fp8;
- (void)resetHeaderListForObjectsWithCriteria:(id)fp8;
- (void)configureQualifierPopupForCriterionPopupInRow:(int)fp8;
- (void)_endEditingHeader;
- (void)headerListOkClicked:(id)fp8;
- (void)headerListCancelClicked:(id)fp8;
- (void)updateHeaderListUI;
- (void)_headerTableBeganEditing:(id)fp8;
- (void)_headerTableEndedEditing:(id)fp8;
- (void)removeHeaderClicked:(id)fp8;
- (void)addHeaderClicked:(id)fp8;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)_removeInvalidHeaders;
- (void)tableView:(id)fp8 setObjectValue:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (void)tileViews:(id)fp8 inContainer:(id)fp12 withChangeAtRow:(int)fp16 removeIsEnabled:(BOOL)fp20;
- (void)connectNextKeyViewChain;
- (id)dateStringFromTextField:(id)fp8 atEndOfDay:(BOOL)fp12;

@end

@interface LibraryImportAssistant : Assistant
{
    NSView *introView;
    NSView *patienceView;
    NSView *doneView;
    NSView *errorView;
    NSView *recoveryIntroView;
    NSTextField *mailboxStatusField;
    NSTextField *messageStatusField;
    NSTextField *timeRemainingField;
    NSProgressIndicator *progressBar;
    NSButton *showNewFeaturesButton;
    NSTextField *newFeaturesTextField;
    ActivityMonitor *activityMonitor;
    NSTimer *updateTimer;
    int state;
    BOOL importWasSuccessful;
    BOOL accountsAreNewlyCreated;
}

- (id)initWithAssistentManager:(id)fp8;
- (void)dealloc;
- (void)setAccountsAreNewlyCreated:(BOOL)fp8;
- (void)start;
- (void)stop;
- (void)_permissionErrorSheetDone:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (BOOL)_checkAccountDirectoryPermissions;
- (void)goForward;
- (id)windowTitle;
- (void)updateProgress:(id)fp8;
- (float)runningAverageWithNewValue:(float)fp8;
- (id)formattedTimeForSeconds:(float)fp8;
- (void)synchronouslyDoTheImport;
- (void)showNewFeatures:(id)fp8;

@end

@interface IMAPQuotaMessageViewer : MessageViewer
{
}

+ (id)existingIMAPQuotaMessageViewerForMailboxUid:(id)fp8;
- (void)_setupUI;
- (void)_setUpWindowContents;

@end

@interface IMAPQuota : Quota
{
    NSPopUpButton *_quotaPopup;
    NSTextField *_quotaPopupLabel;
    NSView *_quotaContainerView;
    QuotaBar *_quotaBar;
    NSTextField *_usageField;
    NSTextField *_capacityField;
    NSTableView *_quotaTable;
    NSProgressIndicator *_progressIndicator;
    NSTextField *_progressField;
    NSTextField *_statusField;
    NSButton *_showMessagesButton;
    NSMutableArray *_mailboxes;
    struct _QuotaSimpleSortDescriptor _simpleSortDescs[3];
}

- (id)initWithIMAPAccount:(id)fp8;
- (void)dealloc;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (void)tableView:(id)fp8 sortDescriptorsDidChange:(id)fp12;
- (void)tableViewSelectionDidChange:(id)fp8;
- (void)quotaPopupChanged:(id)fp8;
- (void)_showMessagesInMailboxAtRow:(int)fp8;
- (void)showMessages:(id)fp8;
- (void)doubleClickedMailbox:(id)fp8;

@end

@interface IMAPQuota (Internal)
- (id)_selectedQuotaName;
- (id)_iconForMailboxUid:(id)fp8;
- (id)_nameForMailboxUid:(id)fp8;
- (void)_updateQuotaBarWithSize:(unsigned long long)fp8 maxSize:(unsigned long long)fp16 count:(unsigned long)fp24 maxCount:(unsigned long)fp28;
- (void)_updateStatusField;
- (void)_engineStatusChanged:(id)fp8;
- (void)_updateQuotaPopupWithQuotaNames:(id)fp8;
- (void)engineDidStart;
- (void)engineDidFinish;
- (void)updateProgress:(id)fp8;
- (void)engineUpdated:(id)fp8;
- (void)_updateUIForQuotaName:(id)fp8 updateTable:(BOOL)fp12;
- (void)_syncSortDescriptors;
- (unsigned int)numberOfSortDescriptors;
- (const struct _QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned int)fp8;
- (void)_resortMailboxes;
- (id)_stringForSize:(unsigned long long)fp8 andCount:(unsigned long)fp16 isCapacity:(BOOL)fp20;
- (void)_updateMailbox:(id)fp8 usage:(id)fp12;
@end

@interface POPQuota : Quota
{
    NSPopUpButton *_showMessagesPopup;
    NSTextField *_usageField;
    NSTableView *_quotaTable;
    NSProgressIndicator *_progressIndicator;
    NSTextField *_progressField;
    NSButton *_deleteButton;
    NSMutableAttributedString *_truncatedString;
    NSMutableDictionary *_truncatedParagraphStyle;
    struct _QuotaSimpleSortDescriptor _simpleSortDescs[5];
    NSMutableArray *_messageIDs;
}

- (id)initWithPOPAccount:(id)fp8;
- (void)dealloc;
- (void)deleteFromServer:(id)fp8;
- (void)deleteMessagesSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (BOOL)_shouldShowMessage:(id)fp8 showMessageType:(int)fp12;
- (id)_filterMessages:(id)fp8 showMessageType:(int)fp12;
- (void)_updateUsageField;
- (void)showMessagesPopupChanged:(id)fp8;
- (void)engineDidStart;
- (void)engineDidFinish;
- (void)updateProgress:(id)fp8;
- (void)engineUpdated:(id)fp8;
- (unsigned int)numberOfSortDescriptors;
- (const struct _QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned int)fp8;
- (int)numberOfRowsInTableView:(id)fp8;
- (id)_truncatedAttributedStringForString:(id)fp8;
- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16;
- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20;
- (void)tableView:(id)fp8 sortDescriptorsDidChange:(id)fp12;
- (void)tableViewSelectionDidChange:(id)fp8;
- (void)_syncSortDescriptors;
- (void)_resortMessages;
- (int)_addMessage:(id)fp8;
- (BOOL)_updateMessage:(id)fp8;
- (void)_deleteServerMessagesStarted:(id)fp8;
- (void)_deleteServerMessagesCompleted:(id)fp8;

@end

@interface MailDeleteCommand : NSDeleteCommand
{
    id _originalScriptCommandDefinition;
}

- (id)initWithCommandDescription:(id)fp8;
- (void)dealloc;
- (id)performDefaultImplementation;

@end

@interface MailCopyCommand : NSCloneCommand
{
    id _originalScriptCommandDefinition;
}

- (id)initWithCommandDescription:(id)fp8;
- (void)dealloc;
- (id)performDefaultImplementation;

@end

@interface MailMoveCommand : NSMoveCommand
{
    id _originalScriptCommandDefinition;
}

+ (void)_performBackgroundCommand:(id)fp8 copyMessages:(id)fp12 fromStores:(id)fp16 toMailboxUid:(id)fp20 shouldDelete:(BOOL)fp24;
- (id)initWithCommandDescription:(id)fp8;
- (void)dealloc;
- (id)performDefaultImplementation;

@end

@interface OptionalView : NSView
{
    NSButton *_optionSwitch;
    NSView *_primaryView;
    struct _NSRect _originalFrame;
    BOOL _isResizing;
    BOOL _isCustomizing;
}

- (id)initWithFrame:(struct _NSRect)fp8;
- (void)dealloc;
- (void)awakeFromNib;
- (void)didAddSubview:(id)fp8;
- (void)willRemoveSubview:(id)fp8;
- (void)subviewFrameDidChange:(id)fp8;
- (id)primaryView;
- (BOOL)isFlipped;
- (BOOL)isOpaque;
- (void)drawRect:(struct _NSRect)fp8;
- (id)optionSwitch;
- (void)sizeToFit;
- (float)minXIncludingOptionSwitch:(BOOL)fp8;
- (float)minXOffsetIncludingOptionSwitch:(BOOL)fp8;

@end

@interface ComposeHeaderView : NSView
{
    id _delegate;
    NSPopUpButton *_disclosureButton;
    NSMenu *_actionMenu;
    OptionalView *_toOptionalView;
    OptionalView *_ccOptionalView;
    OptionalView *_subjectOptionalView;
    OptionalView *_bccOptionalView;
    OptionalView *_replyToOptionalView;
    OptionalView *_accountOptionalView;
    OptionalView *_signatureOptionalView;
    OptionalView *_priorityOptionalView;
    OptionalView *_securityOptionalView;
    NSView *_messageContentView;
    NSPopUpButton *_signaturePopUp;
    NSPopUpButton *_accountPopUp;
    NSButton *_cancelButton;
    NSButton *_okButton;
    unsigned int _showCcView:1;
    unsigned int _showBccView:1;
    unsigned int _showReplyToView:1;
    unsigned int _showAccountView:1;
    unsigned int _showSignatureView:1;
    unsigned int _showPriorityView:1;
    unsigned int _showSecurityView:1;
    unsigned int _accountFieldEnabled:1;
    unsigned int _signatureFieldEnabled:1;
    unsigned int _securityFieldEnabled:1;
    unsigned int _resizingViews:1;
    unsigned int _customizing:1;
    unsigned int _changesCancelled:1;
    unsigned int _preCustomizeTile:1;
    NSViewAnimation *_animation;
    float _nextShownFrameOrigin;
    float _nextHiddenFrameOrigin;
    float _heightDelta;
    id _lastFirstResponder;
    float _signaturePopUpMaxWidth;
    float _accountPopUpMaxWidth;
    OptionalView *_togglingOptionalView;
}

- (id)messageContentView;
- (void)setMessageContentView:(id)fp8;
- (BOOL)isFlipped;
- (BOOL)isOpaque;
- (void)viewWillMoveToWindow:(id)fp8;
- (BOOL)isCustomizing;
- (void)dealloc;
- (void)_restoreFirstResponder;
- (void)_noteCurrentFirstResponder;
- (void)_popDisclosureButtonToFront;
- (void)_readVisibleStateFromOptionCheckboxes;
- (void)beginListeningForChildFrameChangeNotifications;
- (void)_setupMenuItemWithAction:(SEL)fp8 withState:(BOOL)fp12;
- (void)_setupActionMenuItemState;
- (void)awakeFromNib;
- (float)_positionView:(id)fp8 yOffset:(float)fp12;
- (BOOL)_shouldShowSecurityViewWhenNotCustomizing;
- (BOOL)_shouldShowSecurityViewWhenCustomizing;
- (BOOL)_shouldShowSecurityView;
- (BOOL)_shouldShowAccountViewWhenNotCustomizing;
- (BOOL)_shouldShowAccountViewWhenCustomizing;
- (BOOL)_shouldShowAccountView;
- (BOOL)_shouldShowSignatureViewWhenNotCustomizing;
- (BOOL)_shouldShowSignatureViewWhenCustomizing;
- (BOOL)_shouldShowSignatureView;
- (BOOL)_shouldShowPriorityViewWhenNotCustomizing;
- (BOOL)_shouldShowPriorityViewWhenCustomizing;
- (BOOL)_shouldShowPriorityView;
- (struct _NSRect)_calculatePriorityFrame:(struct _NSRect)fp8;
- (void)_calculateAccountFrame:(struct _NSRect *)fp8 signatureFrame:(struct _NSRect *)fp12;
- (void)subviewFrameDidChange:(id)fp8;
- (BOOL)isDisplayingBottomControls;
- (void)fixupTabRing;
- (void)tile;
- (void)_addView:(id)fp8 toList:(id)fp12 isVisible:(BOOL)fp16 adjustYOrigin:(BOOL)fp20;
- (void)_recordUserCustomization;
- (void)_customizeHeaders:(BOOL)fp8 duration:(float)fp12;
- (void)resizeWithOldSuperviewSize:(struct _NSSize)fp8;
- (void)_enableActionMenu:(BOOL)fp8;
- (void)sanityCheckHiddenessOfViewsInAnimationList:(id)fp8;
- (void)animationDidEnd:(id)fp8;
- (void)drawRect:(struct _NSRect)fp8;
- (void)_finishCustomizingSavingChanges:(BOOL)fp8;
- (void)toggleOptionCheckbox:(id)fp8;
- (void)done:(id)fp8;
- (void)_toggleBccOrReplyToField:(BOOL)fp8;
- (void)toggleBccFieldVisibility:(id)fp8;
- (void)toggleReplyToFieldVisibility:(id)fp8;
- (void)configureHeaders:(id)fp8;
- (void)configureAccountPopUpSize;
- (void)configureSignaturePopUpSize;
- (void)setCcFieldVisible:(BOOL)fp8;
- (void)setBccFieldVisible:(BOOL)fp8;
- (void)setReplyToFieldVisible:(BOOL)fp8;
- (void)setAccountFieldVisible:(BOOL)fp8;
- (void)setSignatureFieldVisible:(BOOL)fp8;
- (void)setPriorityFieldVisible:(BOOL)fp8;
- (BOOL)securityFieldVisible;
- (BOOL)showBccHeader;
- (BOOL)showReplyToHeader;
- (void)setAccountFieldEnabled:(BOOL)fp8;
- (void)setSignatureFieldEnabled:(BOOL)fp8;
- (void)setSecurityFieldEnabled:(BOOL)fp8;

@end

@interface MailSlideShow : GenericAttachmentFetcher
{
    BOOL _isPlaying;
}

+ (void)initialize;
+ (BOOL)canDoSlideShow;
+ (id)slideShowWithAttachments:(id)fp8;
- (id)initWithAttachments:(id)fp8;
- (void)dealloc;
- (void)start;
- (void)didFinishBackgroundLoadOfAttachment:(id)fp8;
- (void)_slideshowStopped:(id)fp8;
- (id)_realFileWrapperAtIndex:(int)fp8;
- (int)numberOfObjectsInSlideshow;
- (id)slideshowObjectAtIndex:(int)fp8;
- (BOOL)canExportObjectAtIndexToiPhoto:(int)fp8;
- (void)exportObjectAtIndexToiPhoto:(int)fp8;
- (void)exportObjectsToiPhoto:(id)fp8;

@end

@interface PhotoExporter : GenericAttachmentFetcher
{
}

+ (void)initialize;
+ (BOOL)canExportPhotos;
+ (BOOL)isPhotoFile:(id)fp8;
+ (void)exportPhotoAttachments:(id)fp8;
- (void)_exportAttachments:(id)fp8;
- (void)downloadedAllAttachments;
- (void)_exportPathToIPhoto:(id)fp8;
- (void)didSaveAttachments:(id)fp8 paths:(id)fp12;
- (double)temporaryFolderTimeout;

@end

@interface MailSegmentedCell : NSActionCell
{
    NSMutableArray *_segmentItems;
    int _selectedSegment;
    int _keySegment;
    struct _NSRect _lastBounds;
    struct {
        unsigned int trackingMode:3;
        unsigned int trimmedLabels:1;
        unsigned int drawing:1;
        unsigned int recalcToolTips:1;
        unsigned int reserved:26;
    } _seFlags;
    unsigned int _reserved1;
    unsigned int _reserved2;
    unsigned int _reserved3;
    unsigned int _reserved4;
    int _highlightedSegment;
    unsigned int _showRollover:1;
    int _rolloverSegment;
    NSMutableArray *_trackingRectTags;
}

+ (void)initialize;
+ (id)menuIndicator:(int)fp8;
+ (id)leftButtonCap:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)rightButtonCap:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)buttonSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)buttonFillColorPattern:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)leftSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)rightSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (int)segmentedCellStyle;
+ (id)labelCell;
+ (const struct MailSegmentedCellMetrics *)metricsForControlSize:(int)fp8;
+ (id)disabledColor;
+ (BOOL)_performKeyEquivalentOnAllCells:(id)fp8;
+ (BOOL)prefersTrackingUntilMouseUp;
- (id)init;
- (void)dealloc;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (void)encodeWithCoder:(id)fp8;
- (id)initWithCoder:(id)fp8;
- (void)setSegmentCount:(int)fp8;
- (int)segmentCount;
- (void)setSelectedSegment:(int)fp8;
- (int)_trackingSegment;
- (int)selectedSegment;
- (BOOL)selectSegmentWithTag:(int)fp8;
- (int)indexOfSelectedItem;
- (int)_keySegment;
- (void)_setKeySegment:(int)fp8;
- (void)makeNextSegmentKey;
- (void)makePreviousSegmentKey;
- (BOOL)acceptsFirstResponder;
- (void)setTrackingMode:(int)fp8;
- (int)trackingMode;
- (void)setObjectValue:(id)fp8;
- (id)objectValue;
- (void)setWidth:(float)fp8 forSegment:(int)fp12;
- (float)widthForSegment:(int)fp8;
- (void)setWidthForAllSegments:(float)fp8;
- (void)setImage:(id)fp8 forSegment:(int)fp12;
- (id)imageForSegment:(int)fp8;
- (void)setLabel:(id)fp8 forSegment:(int)fp12;
- (id)labelForSegment:(int)fp8;
- (void)setSelected:(BOOL)fp8 forSegment:(int)fp12;
- (BOOL)isSelectedForSegment:(int)fp8;
- (void)setEnabled:(BOOL)fp8 forSegment:(int)fp12;
- (BOOL)isEnabledForSegment:(int)fp8;
- (void)setMenu:(id)fp8 forSegment:(int)fp12;
- (id)menuForSegment:(int)fp8;
- (void)setToolTip:(id)fp8 forSegment:(int)fp12;
- (id)toolTipForSegment:(int)fp8;
- (void)setTag:(int)fp8 forSegment:(int)fp12;
- (int)tagForSegment:(int)fp8;
- (void)setMenuIndicatorShown:(BOOL)fp8 forSegment:(int)fp12;
- (BOOL)isMenuIndicatorShownForSegment:(int)fp8;
- (void)_focusDidChange:(id)fp8;
- (void)_clearMouseTracking;
- (void)_setMouseTrackingInRect:(struct _NSRect)fp8 ofView:(id)fp24 forSegment:(int)fp28;
- (void)_setMouseTrackingForSegment:(int)fp8;
- (void)resetTrackingRects;
- (void)removeTrackingRects;
- (void)setShowRollover:(BOOL)fp8;
- (BOOL)showRollover;
- (void)setFont:(id)fp8;
- (void)setControlSize:(int)fp8;
- (struct _NSSize)cellSizeForBounds:(struct _NSRect)fp8;
- (void)_makeEqualSizeSegments;
- (struct _NSRect)drawingRectForBounds:(struct _NSRect)fp8;
- (BOOL)isOpaque;
- (const struct MailSegmentedCellMetrics *)metrics;
- (struct _NSRect)_boundsForCellFrame:(struct _NSRect)fp8;
- (struct _NSRect)_rectForSegment:(int)fp8 inFrame:(struct _NSRect)fp12;
- (void)drawFocusRingForSegment:(int)fp8 inFrame:(struct _NSRect)fp12 withView:(id)fp28;
- (void)drawBackgroundWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawLabelForSegment:(int)fp8 inFrame:(struct _NSRect)fp12 withView:(id)fp28;
- (void)drawImageForSegment:(int)fp8 inFrame:(struct _NSRect)fp12 withView:(id)fp28;
- (void)drawSegment:(int)fp8 inFrame:(struct _NSRect)fp12 withView:(id)fp28;
- (BOOL)_needRedrawOnWindowChangedKeyState;
- (BOOL)trackMouse:(id)fp8 inRect:(struct _NSRect)fp12 ofView:(id)fp28 untilMouseUp:(BOOL)fp32;
- (BOOL)startTrackingAt:(struct _NSPoint)fp8 inView:(id)fp16;
- (BOOL)continueTracking:(struct _NSPoint)fp8 at:(struct _NSPoint)fp16 inView:(id)fp24;
- (void)_selectHighlightedSegment;
- (void)stopTracking:(struct _NSPoint)fp8 at:(struct _NSPoint)fp16 inView:(id)fp24 mouseIsUp:(BOOL)fp28;
- (BOOL)_sendActionFrom:(id)fp8;
- (void)performClick:(id)fp8;
- (void)_calculateSelectedSegmentForPoint:(struct _NSPoint)fp8;
- (void)_trackSelectedItemMenu;
- (void)_displayDelayedMenu;
- (BOOL)_needsRedrawOnMouseInsideChange;
- (void)_mouseEnteredOrExitedSegment:(id)fp8;
- (void)mouseEntered:(id)fp8;
- (void)mouseExited:(id)fp8;
- (void)setControlView:(id)fp8;
- (BOOL)_needsToolTipRecalc;
- (void)_setNeedsToolTipRecalc:(BOOL)fp8;
- (BOOL)_hasItemTooltips;
- (void)_removeAllToolTips;

@end

@interface SegmentItem : NSObject <NSCopying>
{
    float _width;
    NSImage *_image;
    NSString *_label;
    NSMenu *_menu;
    NSString *_toolTip;
    int _tag;
    struct {
        unsigned int needsRecalc:1;
        unsigned int selected:1;
        unsigned int disabled:1;
        unsigned int showMenuIndicator:1;
        unsigned int reserved:28;
    } _flags;
    float _fullWidth;
    float _shrinkage;
    struct _NSRect _imageRect;
    struct _NSRect _labelRect;
    struct _NSRect _menuIndRect;
    int _toolTipTag;
}

- (void)dealloc;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (void)encodeWithCoder:(id)fp8;
- (id)initWithCoder:(id)fp8;
- (BOOL)_setWidth:(float)fp8;
- (BOOL)_setImage:(id)fp8;
- (BOOL)_setLabel:(id)fp8;
- (BOOL)_setMenu:(id)fp8;
- (void)_setNeedsRecalc;
- (BOOL)_needsRecalc;
- (void)_recalcRectsForCell:(id)fp8;
- (float)_displayWidth;
- (id)view:(id)fp8 stringForToolTip:(int)fp12 point:(struct _NSPoint)fp16 userData:(void *)fp24;

@end

@interface SegmentLabelCell : NSCell
{
}

- (id)init;
- (int)_lineBreakMode;

@end

@interface NSSegmentedControl (MailViewer)
- (void)sizeToFitMakingEqualSizeSegments;
- (void)setWidthForAllSegments:(float)fp8;
@end

@interface NSPreferencesModule (ActiveModule)
+ (id)activeInstance;
@end

@interface NSPreferences (ActiveModule)
- (id)activeModule;
- (id)currentModule;
@end

@interface DOMHTMLElement (MailQuoteLevel)
- (int)quoteLevelDelta;
@end

@interface DOMElement (MailExtras)
- (BOOL)isBlockLevelElement;
- (BOOL)hasMarginsOfZero;
@end

@interface DOMRange (MailExtras)
- (BOOL)isEquivalentToCollapsedRange;
- (id)stringValue;
- (void)getLineBoundaryParent:(id *)fp8 nextSibling:(id *)fp12 affinity:(int)fp16;
- (void)fixIfEndpointIsAtBeginningOfLine;
- (void)fixIfStartIsAtEndOfContainerNode;
- (BOOL)containsRichText;
- (id)attachmentsFromDocument:(id)fp8;
- (void)insertTextAtBeginning:(id)fp8 atEnd:(id)fp12;
@end

@interface DOMCharacterData (MailExtras)
- (id)debugDescription;
@end

@interface DOMNode (MailExtras)
- (id)stringValue;
- (BOOL)isBlockLevelElement;
- (BOOL)hasNoContents;
- (int)quoteLevel;
- (int)quoteLevelDelta;
- (id)commonAncestorWithNode:(id)fp8;
- (BOOL)containsRichText;
- (BOOL)_isAppleStringAttachmentSpan;
- (void)recursivelyRemoveMailAttributesConvertingObjectsToImages:(BOOL)fp8;
- (void)recursivelyRemoveMailAttributes;
- (void)recursivelyFixParagraphs;
- (void)fixParagraphsAndQuotesFromMicrosoftNodesToRemove:(id)fp8;
- (void)fixParagraphsAndQuotesFromMicrosoft;
@end

@interface WebPreferences (MessageDefaultsSupport)
+ (id)standardMailWebPreferences;
- (void)_mail_configureFromDefaults;
- (void)_performDelayedEnablingOnMainThread;
- (void)_performDelayedEnabling;
@end

@interface NSView (LocatingFrameViews)
- (id)enclosingFrameView;
- (id)enclosingWebView;
@end

@interface WebFrame (SizingExtras)
- (void)_setSize:(struct _NSSize)fp8 ofElement:(id)fp16;
- (void)adjustToDocumentView;
- (void)adjustAttachmentView:(id)fp8;
- (void)selectAttachmentView:(id)fp8;
@end

@interface DOMHTMLImageElement (MailHTMLAttachments)
- (BOOL)getAttachment:(id *)fp8 andNewElement:(id *)fp12 usingArchive:(id)fp16 includingRemote:(BOOL)fp20;
@end

@interface DOMHTMLObjectElement (MailHTMLAttachments)
- (BOOL)getAttachment:(id *)fp8 andNewElement:(id *)fp12 usingArchive:(id)fp16;
@end

@interface DOMElement (MailHTMLAttachments)
- (BOOL)getAttachment:(id *)fp8 andNewElement:(id *)fp12 usingArchive:(id)fp16 includingRemote:(BOOL)fp20;
@end

@interface WebArchive (MailHTMLAttachments)
- (id)convertAttachmentsInFragment:(id)fp8 convertRemoteImages:(BOOL)fp12;
@end

@interface WebArchive (MailHTMLToAttributedString)
- (id)attributedString;
@end

@interface NSAttributedString (MailRTFDToHTMLConversion)
- (id)webArchiveForRange:(struct _NSRange)fp8 signatureID:(id *)fp16 fixUpNewlines:(BOOL)fp20;
- (id)webArchiveForRange:(struct _NSRange)fp8 signatureID:(id *)fp16;
- (id)webArchiveForRange:(struct _NSRange)fp8 fixUpNewlines:(BOOL)fp16;
- (id)webArchiveForRange:(struct _NSRange)fp8;
@end

@interface TextMessageEditor : MessageEditor
{
    MessageTextView *composeText;
    NSView *composeWebView;
}

- (BOOL)loadEditorNib;
- (void)readDefaultsFromDictionary:(id)fp8;
- (void)writeDefaultsToDictionary:(id)fp8;
- (id)mainContentView;
- (id)attachmentStatusNeighbourView;
- (void)insertOriginalAttachmentsWithGatekeeperApproval:(id)fp8;
- (void)insertOriginalAttachments:(id)fp8;
- (void)removeAttachments:(id)fp8;
- (void)_toggleRichSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)toggleRich:(id)fp8;
- (void)pasteAsQuotation:(id)fp8;
- (BOOL)textView:(id)fp8 doCommandBySelector:(SEL)fp12;
- (void)stayPlainOrBecomeRich:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)updateContentsToShowSignature:(id)fp8;
- (id)attachments;
- (void)appendAttributedString:(id)fp8;
- (id)attachmentContextMenu;
- (unsigned long long)textLengthEstimate;
- (id)textView:(id)fp8 willWriteSelectionToPasteboard:(id)fp12 type:(id)fp16;
- (BOOL)validateAction:(SEL)fp8 tag:(int)fp12;
- (void)updateRichTextFlag;
- (BOOL)isRichText;
- (void)setRichText:(BOOL)fp8;
- (void)appendMessageArray:(id)fp8;
- (void)addFileWrappersForPaths:(id)fp8;
- (void)redisplayChangedAttachment:(id)fp8;
- (void)forceWindowClose;
- (BOOL)backEnd:(id)fp8 shouldSaveMessage:(id)fp12;
- (void)setBackEnd:(id)fp8;
- (void)updateMainContentView;
- (void)backEnd:(id)fp8 didCompleteLoadForEditorSettings:(id)fp12;
- (Class)backEndClass;

@end

@interface TextMessageEditor (Internal)
+ (id)sharedContextMenu;
- (void)reloadContentsFromMessage:(id)fp8;
- (void)messageWillNeedRecoloring:(id)fp8;
@end

@interface TextComposeBackEnd : ComposeBackEnd
{
    NSAttributedString *_messageContents;
    NSMutableDictionary *_originalMessageBodyStrings;
}

- (void)dealloc;
- (id)defaultTextAttributes;
- (id)messageContents;
- (id)messageContentsForInitialText:(id)fp8;
- (void)_textStorageChanged:(id)fp8;
- (void)setMessageContents:(id)fp8;
- (id)_findSignatureInAttributedString:(id)fp8;
- (id)signatureId;
- (id)originalMessageBodyString;
- (void)loadContentsForMessage:(id)fp8 body:(id)fp12;
- (void)setOriginalMessages:(id)fp8;
- (BOOL)hasContents;
- (BOOL)containsRichText;
- (id)makeCopyOfContentsForDraft:(BOOL)fp8;
- (id)outgoingMessageUsingWriter:(id)fp8 contents:(id)fp12 headers:(id)fp16 isDraft:(BOOL)fp20;

@end

@interface _WebComposeMessageContents : NSObject
{
    int sendFormat;
    NSAttributedString *plainText;
    NSString *topLevelHtmlString;
    NSMutableArray *attachmentsAndHtmlStrings;
}

- (void)dealloc;
- (void)addAttachmentOrHtmlString:(id)fp8;

@end

@interface WebComposeBackEnd : ComposeBackEnd
{
    EditableWebMessageDocument *_document;
    NSMutableDictionary *_contentsByMessage;
    NSMutableDictionary *_documentsByMessage;
    WebArchive *_initialWebArchive;
    NSMutableDictionary *_attachmentMimeBodiesByURL;
}

- (void)dealloc;
- (id)init;
- (void)setInitialWebArchive:(id)fp8;
- (id)document;
- (void)_generateWebArchiveFromOriginalMessagesSetupForViewAndContinue:(id)fp8 continueFinalSetupTarget:(id)fp12;
- (void)setupContentsForView:(id)fp8 continueFinalSetupTarget:(id)fp12;
- (void)_continueToSetupContentsForView:(id)fp8 withArchives:(id)fp12 continueFinalSetupTarget:(id)fp16;
- (id)stripHeadIndentsFromAttributedString:(id)fp8;
- (id)mimeBodyForAttachmentWithURL:(id)fp8;
- (void)getSignatureElement:(id *)fp8 parent:(id *)fp12 nextSibling:(id *)fp16;
- (id)webArchiveForSignature:(id)fp8;
- (id)signatureId;
- (id)signature;
- (void)setSignature:(id)fp8;
- (BOOL)hasContents;
- (BOOL)containsRichText;
- (id)attachments;
- (id)outgoingMessageUsingWriter:(id)fp8 contents:(id)fp12 headers:(id)fp16 isDraft:(BOOL)fp20;
- (void)_addBaseURLTagToNode:(id)fp8;
- (void)recursivelyURLifyNode:(id)fp8;
- (id)makeCopyOfContentsForDraft:(BOOL)fp8;
- (void)loadContentsForMessage:(id)fp8 body:(id)fp12;
- (BOOL)containsAttachments;
- (BOOL)containsAttachmentsThatCouldConfuseWindowsClients;

@end

@interface WebMessageEditor : MessageEditor
{
    EditingMessageWebView *composeWebView;
    EditingWebMessageController *_controller;
    unsigned int _sendWhenFinishLoading:1;
    unsigned int _needToDoExpensiveTextForRichness:1;
    unsigned int _needToCheckRichnessInRange:1;
    NSDictionary *_infoForRichnessTest;
    NSArray *attachmentsForContextualMenu;
    WebFrame *_loadArchiveTargetFrame;
    NSMutableDictionary *_bodiesByAttachmentURL;
}

- (void)dealloc;
- (void)_setupInlineSpellChecking;
- (BOOL)loadEditorNib;
- (void)appendAttributedString:(id)fp8;
- (void)updateMainContentView;
- (Class)backEndClass;
- (id)mainContentView;
- (id)attachmentStatusNeighbourView;
- (id)attachments;
- (BOOL)validateAction:(SEL)fp8 tag:(int)fp12;
- (void)insertOriginalAttachments:(id)fp8 gatekeeperApproved:(BOOL)fp12;
- (void)insertOriginalAttachmentsWithGatekeeperApproval:(id)fp8;
- (void)insertOriginalAttachments:(id)fp8;
- (void)removeAttachments:(id)fp8;
- (void)_toggleRichSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
- (void)toggleRich:(id)fp8;
- (BOOL)startFinalSpellCheck;
- (void)endFinalSpellCheck;
- (void)_changeSignatureFrom:(id)fp8 to:(id)fp12;
- (void)updateContentsToShowSignature:(id)fp8;
- (unsigned long long)textLengthEstimate;
- (void)updateRichTextFlag;
- (BOOL)isRichText;
- (BOOL)allowsRichText;
- (void)_changeSendFormatInBackEndAndView:(int)fp8;
- (void)setRichText:(BOOL)fp8;
- (void)mailAttachmentsAdded:(id)fp8;
- (void)_generateWebArchivesToAppendForMessages:(id)fp8;
- (id)mimeBodyForAttachmentWithURL:(id)fp8;
- (void)appendMessageArray:(id)fp8;
- (void)_appendMessages:(id)fp8 withWebArchives:(id)fp12;
- (void)addFileWrappersForPaths:(id)fp8;
- (void)redisplayChangedAttachment:(id)fp8;
- (void)backEnd:(id)fp8 didCompleteLoadForEditorSettings:(id)fp12;
- (void)checkRichnessForEditedRange:(id)fp8;
- (void)_finalSetup;
- (void)_continueFinalSetupAllowingSignatureChange:(BOOL)fp8;
- (void)_continueFinalSetup;
- (void)_continueFinalSetupWithoutSignature;
- (void)webView:(id)fp8 didFinishLoadForFrame:(id)fp12;
- (void)webView:(id)fp8 didFailProvisionalLoadWithError:(id)fp12 forFrame:(id)fp16;
- (void)webView:(id)fp8 didFailLoadWithError:(id)fp12 forFrame:(id)fp16;
- (void)webView:(id)fp8 decidePolicyForNavigationAction:(id)fp12 request:(id)fp16 frame:(id)fp20 decisionListener:(id)fp24;
- (id)webView:(id)fp8 resource:(id)fp12 willSendRequest:(id)fp16 redirectResponse:(id)fp20 fromDataSource:(id)fp24;
- (BOOL)webViewShouldBeginEditing:(id)fp8 inDOMRange:(id)fp12;
- (BOOL)webViewShouldEndEditing:(id)fp8 inDOMRange:(id)fp12;
- (BOOL)webView:(id)fp8 shouldInsertNode:(id)fp12 replacingDOMRange:(id)fp16 givenAction:(int)fp20;
- (BOOL)webView:(id)fp8 shouldInsertText:(id)fp12 replacingDOMRange:(id)fp16 givenAction:(int)fp20;
- (BOOL)webView:(id)fp8 shouldDeleteDOMRange:(id)fp12;
- (BOOL)webView:(id)fp8 shouldChangeSelectedDOMRange:(id)fp12 toDOMRange:(id)fp16 affinity:(int)fp20 stillSelecting:(BOOL)fp24;
- (void)stayPlainOrBecomeRich:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16;
- (BOOL)webView:(id)fp8 shouldApplyStyle:(id)fp12 toElementsInDOMRange:(id)fp16;
- (BOOL)webView:(id)fp8 shouldChangeTypingStyle:(id)fp12 toStyle:(id)fp16;
- (BOOL)webView:(id)fp8 doCommandBySelector:(SEL)fp12;
- (void)webViewDidBeginEditing:(id)fp8;
- (void)webViewDidChange:(id)fp8;
- (void)webViewDidEndEditing:(id)fp8;
- (void)webViewDidChangeTypingStyle:(id)fp8;
- (void)webViewDidChangeSelection:(id)fp8;
- (id)webView:(id)fp8 shouldReplaceSelectionWithWebArchive:(id)fp12 givenAction:(int)fp16;
- (void)webView:(id)fp8 didAddMailAttachment:(id)fp12;
- (void)webView:(id)fp8 willRemoveMailAttachment:(id)fp12;
- (id)webView:(id)fp8 plainTextEquivalentForNode:(id)fp12;
- (void)changeFromHeader:(id)fp8;
- (void)send:(id)fp8;
- (void)willShowContextualMenuForAttachment:(id)fp8;
- (id)selectedAttachments;
- (id)attachmentsForContextualMenu;
- (BOOL)moreThanOneAttachmentSelected;
- (id)attachmentForEvent:(id)fp8;
- (void)openAttachment:(id)fp8;
- (void)openAttachmentWithApplication:(id)fp8;
- (void)chooseApplicationToOpenAttachment:(id)fp8;
- (void)saveAttachment:(id)fp8;
- (void)saveAttachmentToDownloadsDirectory:(id)fp8;
- (void)viewAttachmentInline:(id)fp8;
- (BOOL)validateMenuItem:(id)fp8;
- (void)forceWindowClose;
- (void)pasteAsMarkup;

@end

@interface NSNib (MailSharedNibLoading)
+ (BOOL)loadSharedNib:(int)fp8 owner:(id)fp12;
@end

@interface _ComposeAttachmentEnumerator : NSEnumerator <DOMNodeFilter>
{
    EditableWebMessageDocument *document;
    DOMRange *range;
    DOMNodeIterator *iterator;
    unsigned int acceptDeleted:1;
    unsigned int acceptNonDeleted:1;
    unsigned int createdIterator:1;
}

- (void)dealloc;
- (id)nextObject;
- (short)acceptNode:(id)fp8;

@end

@interface EditableWebMessageDocument : WebMessageDocument
{
    DOMHTMLDocument *_htmlDocument;
    NSMutableDictionary *_attachmentsByURL;
}

- (id)htmlDocument;
- (void)setHTMLDocument:(id)fp8;
- (void)setBaseURL:(id)fp8;
- (id)attachmentForURL:(id)fp8;
- (id)prepareToAddArchive:(id)fp8 attachmentDelegate:(id)fp12;
- (id)prepareToAddArchive:(id)fp8;
- (void)addAttachment:(id)fp8 forURL:(id)fp12;
- (id)attachmentElementEnumeratorWithOptions:(int)fp8;
- (id)attachmentElementEnumeratorForRange:(id)fp8 withOptions:(int)fp12;

@end

@interface EditingWebMessageController : WebMessageController
{
}

- (void)setMainFrameDocumentView:(id)fp8;
- (BOOL)scrollVerticallyBy:(float)fp8;
- (float)verticalPageScrollDistance;
- (BOOL)considerBaseURLsInternal;

@end

@interface MailSearchFieldCell : NSSearchFieldCell
{
}

+ (void)initialize;
+ (double)_keyboardDelayForPartialSearchString:(id)fp8;

@end

@interface NSString (HTMLConversion)
- (id)markupString;
@end

@interface AttachmentDragSession : NSObject
{
    NSView *_sourceView;
    NSMutableArray *_attachments;
}

- (void)dealloc;
- (id)retain;
- (id)autorelease;
- (void)release;
- (id)initWithSourceView:(id)fp8 attachments:(id)fp12;
- (id)sourceView;
- (id)attachments;
- (BOOL)startDragFromPoint:(struct _NSPoint)fp8 event:(id)fp16 image:(id)fp20;
- (unsigned int)draggingSourceOperationMaskForLocal:(BOOL)fp8;
- (void)draggedImage:(id)fp8 beganAt:(struct _NSPoint)fp12;
- (void)draggedImage:(id)fp8 endedAt:(struct _NSPoint)fp12 operation:(unsigned int)fp20;
- (void)draggedImage:(id)fp8 movedTo:(struct _NSPoint)fp12;
- (BOOL)ignoreModifierKeysWhileDragging;
- (id)namesOfPromisedFilesDroppedAtDestination:(id)fp8;
- (void)pasteboard:(id)fp8 provideDataForType:(id)fp12;

@end

@interface NSView (AttachmentDragSession)
- (BOOL)isCurrentAttachmentDragSourceView;
@end

@interface TemporaryItemManager : NSObject
{
    NSString *_path;
    NSTimer *_timer;
}

+ (void)cleanupAllItems;
+ (id)temporaryItemManagerWithRelativePath:(id)fp8 cleanupInterval:(double)fp12;
- (void)dealloc;
- (id)path;
- (id)expirationDate;
- (void)_setUpTimer:(id)fp8;
- (void)setExpirationDate:(id)fp8;
- (void)cleanUpDirectory;
- (BOOL)fileManager:(id)fp8 shouldProceedAfterError:(id)fp12;

@end

@interface DOMHTMLDocument (MailExtras)
- (id)findElementWithTag:(id)fp8 className:(id)fp12 andIdName:(id)fp16;
- (id)findElementWithTag:(id)fp8 andClass:(id)fp12;
- (id)createFragmentForMarkupString:(id)fp8 baseURLString:(id)fp12;
- (id)createFragmentForMarkupString:(id)fp8;
- (id)createFragmentForString:(id)fp8;
- (id)createFragmentForStringLosingBR:(id)fp8;
- (id)createMessageQuoteElement;
- (id)createNonemptyDivElementWithPlainStyle;
- (id)createFragmentForWebArchive:(id)fp8;
- (id)createFragmentForWebArchive:(id)fp8 baseURL:(id)fp12;
- (id)head;
@end

@interface DOMHTMLObjectElement (AttachmentLocator)
- (id)attachmentFromDocument:(id)fp8;
@end

@interface DOMHTMLElement (MailExtras)
+ (BOOL)isRichTextStyle:(id)fp8;
- (BOOL)isRichTextElementType;
- (BOOL)isRichTextElement;
- (void)recursivelyRemoveMailAttributesConvertingObjectsToImages:(BOOL)fp8;
- (id)attachmentFromDocument:(id)fp8;
@end

@interface EditingMessageWebView : WebView
{
}

- (BOOL)canPasteAsHTML;
- (BOOL)validateUserInterfaceItem:(id)fp8;
- (void)deleteNode:(id)fp8;
- (void)insertNode:(id)fp8 parent:(id)fp12 nextSibling:(id)fp16;
- (void)setValue:(id)fp8 forAttribute:(id)fp12 ofElement:(id)fp16;
- (BOOL)removeFormattingFromTree:(id)fp8 forDocument:(id)fp12 plainTextDelegate:(id)fp16;
- (BOOL)removeRichNodesAndStyleFromTree:(id)fp8 forDocument:(id)fp12 plainTextDelegate:(id)fp16;
- (void)consolidateTextAndWhitespaceInTree:(id)fp8;
- (void)insertTemporarySelectionMarkersForRange:(id)fp8;
- (void)restoreSelectionFromTemporaryMarkers;
- (void)removeAllFormatting;
- (void)saveSelectionForUndo;
- (void)deleteRange:(id)fp8;
- (void)registerForDraggedTypes:(id)fp8;
- (unsigned int)draggingEntered:(id)fp8;
- (unsigned int)draggingUpdated:(id)fp8;
- (void)draggingExited:(id)fp8;
- (BOOL)prepareForDragOperation:(id)fp8;
- (BOOL)performDragOperation:(id)fp8;
- (void)concludeDragOperation:(id)fp8;
- (BOOL)wantsPeriodicDraggingUpdates;
- (void)paste:(id)fp8;
- (void)pasteAsQuotation:(id)fp8;
- (void)pasteWithCurrentStyle:(id)fp8;
- (void)pasteAsHTML:(id)fp8;
- (void)editLink:(id)fp8;
- (void)addHorizontalRule:(id)fp8;
- (void)changeQuoteLevel:(id)fp8;
- (BOOL)splitUpBlockQuotesPartiallyContainedInRange:(id)fp8;
- (int)compareRange:(id)fp8 toEndOfNode:(id)fp12;
- (void)makeFontBigger:(id)fp8;
- (void)makeFontSmaller:(id)fp8;

@end

@interface MailButtonCell : NSButtonCell
{
    struct _NSSize _titleSize;
}

+ (float)buttonHeight;
- (id)initWithTitle:(id)fp8;
- (id)_textWithShadowAttributes;
- (id)attributedTitle;
- (void)setTitle:(id)fp8;
- (struct _NSSize)cellSizeForBounds:(struct _NSRect)fp8;
- (struct _NSRect)titleRectForBounds:(struct _NSRect)fp8;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface MailPopUpButtonCell : NSPopUpButtonCell
{
}

+ (float)buttonHeight;
- (id)initWithMenu:(id)fp8;
- (id)_textWithShadowAttributes;
- (id)attributedTitle;
- (struct _NSSize)cellSizeForBounds:(struct _NSRect)fp8;
- (struct _NSRect)titleRectForBounds:(struct _NSRect)fp8;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface SplitterAnimation : NSAnimation
{
    ExpandingSplitView *_splitView;
    float _startPercentage;
    float _endPercentage;
}

- (id)initWithSplitView:(id)fp8 endPercentage:(float)fp12;
- (void)dealloc;
- (void)_updatePercentage;
- (void)setCurrentProgress:(float)fp8;

@end

@interface ComposeSpellChecker : NSSpellChecker
{
}

- (void)setPostCompletedNotification:(BOOL)fp8 forSpellDocumentWithTag:(int)fp12;
- (int)currentSpellDocumentTag;
- (void)_mail_postingTimerFired:(id)fp8;
- (void)_mail_spellPanelDidClose:(id)fp8;
- (struct _NSRange)checkSpellingOfString:(id)fp8 startingAt:(int)fp12 language:(id)fp16 wrap:(BOOL)fp20 inSpellDocumentWithTag:(int)fp24 wordCount:(int *)fp28;
- (id)spellingPanel;
- (void)closeSpellDocumentWithTag:(int)fp8;

@end

@interface NSSpellChecker (AllocationOverride)
+ (id)allocWithZone:(struct _NSZone *)fp8;
@end

@interface GenericAttachmentFetcher : NSObject
{
    NSArray *_attachments;
    NSMutableSet *_attachmentsBeingDownloaded;
}

- (void)dealloc;
- (void)finalize;
- (id)initWithAttachments:(id)fp8;
- (void)_downloadCompleted:(id)fp8;
- (void)beginBackgroundLoad;
- (void)cancelBackgroundLoad;
- (id)downloadedAttachments;
- (void)_saveAttachments:(id)fp8 itemManager:(id)fp12;
- (void)beginSaveOfAttachments:(id)fp8 toTemporaryFolderWithName:(id)fp12 taskName:(id)fp16;
- (void)didFinishBackgroundLoadOfAttachment:(id)fp8;
- (void)downloadedAllAttachments;
- (void)didSaveAttachments:(id)fp8 paths:(id)fp12;
- (void)didSaveAttachment:(id)fp8 toPath:(id)fp12;
- (double)temporaryFolderTimeout;

@end

@interface TemporaryAttachmentOpener : GenericAttachmentFetcher
{
    NSString *_applicationPath;
}

- (id)initWithAttachments:(id)fp8 applicationPath:(id)fp12;
- (void)dealloc;
- (void)downloadedAllAttachments;
- (void)_openAttachmentAtPath:(id)fp8;
- (void)didSaveAttachment:(id)fp8 toPath:(id)fp12;
- (double)temporaryFolderTimeout;

@end

@interface HyperlinkPanel : NSObject
{
    NSTextField *_linkTextField;
    NSButton *_okButton;
    NSButton *_removeLinkButton;
    EditingMessageWebView *_currentWebView;
    DOMHTMLAnchorElement *_selectedAnchor;
    NSString *_selectedText;
}

+ (void)runPanelForView:(id)fp8;
- (void)dealloc;
- (id)init;
- (void)orderOutPanel:(id)fp8;

@end

@interface HyperlinkPanel (Internal)
- (void)_runPanelForView:(id)fp8;
- (void)_sheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16;
@end

@interface SearchSliceView : NSView
{
    int _searchType;
    int _searchTarget;
    id _delegate;
    NSButton *_saveButton;
    NSProgressIndicator *_progressIndicator;
    NSMutableArray *_typeButtons;
    NSMutableArray *_targetButtons;
    NSImageView *_separator;
    unsigned int _layingOutItems:1;
    double _lastLayoutTime;
    BOOL _canContentSearchSelectedMailboxes;
}

- (void)_addButtonForSearchType:(int)fp8;
- (void)_addButtonForSearchTarget:(int)fp8;
- (void)_updateUIToReflectSearchTarget;
- (void)_updateUIToReflectSearchType;
- (id)typeButtonWithTag:(int)fp8;
- (void)_updateContentSearchButtonEnabledState;
- (void)_updateUI;
- (void)_layoutItems;
- (void)_setupView;
- (id)initWithFrame:(struct _NSRect)fp8 searchType:(int)fp24 searchTarget:(int)fp28;
- (id)initWithFrame:(struct _NSRect)fp8;
- (void)dealloc;
- (void)setDelegate:(id)fp8;
- (id)delegate;
- (int)searchType;
- (void)setSearchType:(int)fp8;
- (int)searchTarget;
- (id)targetButtonWithTag:(int)fp8;
- (void)setCanSearchSelectedMailbox:(BOOL)fp8;
- (void)setCanContentSearchSelectedMailboxes:(BOOL)fp8;
- (void)setSearchTarget:(int)fp8;
- (void)startProgressAnimation;
- (void)stopProgressAnimation;
- (void)setCanSaveSearch:(BOOL)fp8;
- (id)_backgroundColor;
- (struct CGSize)_patternPhase;
- (void)drawRect:(struct _NSRect)fp8;
- (void)searchTypeButtonAction:(id)fp8;
- (void)searchTargetButtonAction:(id)fp8;
- (void)saveButtonAction:(id)fp8;
- (void)setFrame:(struct _NSRect)fp8;
- (void)viewWillStartLiveResize;
- (void)viewDidEndLiveResize;

@end

@interface SearchButton : NSButton
{
}

+ (Class)cellClass;
- (BOOL)acceptsFirstMouse:(id)fp8;
- (void)setStringValue:(id)fp8;
- (void)setStateToSelected;
- (void)setStateToUnselected;
- (void)viewWillMoveToWindow:(id)fp8;
- (void)viewDidMoveToWindow;

@end

@interface SearchButtonCell : NSButtonCell
{
    BOOL _mouseInside;
    struct _NSSize _titleSize;
}

- (id)initTextCell:(id)fp8;
- (void)setTitle:(id)fp8;
- (BOOL)isPressed;
- (BOOL)isSelected;
- (BOOL)_needsRedrawOnMouseInsideChange;
- (BOOL)_shouldShowRollovers;
- (BOOL)_enablesOnWindowChangedKeyState;
- (BOOL)isEnabled;
- (id)_highlightTextColor;
- (id)_normalTextColor;
- (id)_textAttributes;
- (id)_textWithShadowAttributes;
- (id)attributedTitle;
- (BOOL)_getButtonImageParts:(id *)fp8:(id *)fp12:(id *)fp16;
- (float)buttonHeight;
- (struct _NSSize)cellSizeForBounds:(struct _NSRect)fp8;
- (struct _NSRect)titleRectForBounds:(struct _NSRect)fp8;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)mouseEntered:(id)fp8;
- (void)mouseExited:(id)fp8;
- (BOOL)_needRedrawOnWindowChangedKeyState;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface NSString (MailAdditions)
- (void)drawEtchedInRect:(struct _NSRect)fp8 withTopColor:(id)fp24 bottomColor:(id)fp28 font:(id)fp32 centered:(BOOL)fp36 flipped:(BOOL)fp40;
@end

@interface MailVerticalSplitView : NSView
{
    NSMutableSet *collapsedSubviews;
    id delegate;
    BOOL isPaneSplitter;
    BOOL adjustSubviewsBeforeDrawing;
    ShadowView *shadowView;
    int indexOfPrimarySubview;
}

+ (BOOL)showSplitterShadow;
- (id)initWithFrame:(struct _NSRect)fp8;
- (void)dealloc;
- (int)indexOfPrimarySubview;
- (void)swapPositionsOfSubviews;
- (void)setUpShadowWithSuperview:(id)fp8 inSubviewWithIndex:(int)fp12;
- (void)setIsPaneSplitter:(BOOL)fp8;
- (BOOL)isPaneSplitter;
- (BOOL)isVertical;
- (void)setDelegate:(id)fp8;
- (id)delegate;
- (void)adjustSubviews;
- (float)dividerThickness;
- (BOOL)isSubviewCollapsed:(id)fp8;
- (BOOL)acceptsFirstMouse:(id)fp8;
- (void)didAddSubview:(id)fp8;
- (struct _NSRect)dividerFrame;
- (struct _NSRect)cursorRectFrame;
- (float)dividerPosition;
- (void)drawRect:(struct _NSRect)fp8;
- (BOOL)isFlipped;
- (BOOL)isOpaque;
- (CDAnonymousStruct2)_dividerDragParamsForIndex:(unsigned int)fp8 originalPosition:(float)fp12;
- (CDAnonymousStruct1)_resultOfDividerDragToPosition:(float)fp8 withParams:(const CDAnonymousStruct2 *)fp12;
- (void)_presentDividerDragResult:(const CDAnonymousStruct1 *)fp8 withParams:(const CDAnonymousStruct2 *)fp12;
- (id)hitTest:(struct _NSPoint)fp8;
- (void)mimicDoubleClickOnDivider;
- (void)mouseDown:(id)fp8;
- (CDAnonymousStruct2)beginDividerDragging;
- (void)dragDividerToLocation:(float)fp8 withInfo:(CDAnonymousStruct2)fp12;
- (void)endDividerDragging;
- (BOOL)mouseDownCanMoveWindow;
- (void)resetCursorRects;
- (void)replaceSubview:(id)fp8 with:(id)fp12;
- (void)resizeSubviewsWithOldSize:(struct _NSSize)fp8;
- (void)setAutoresizesSubviews:(BOOL)fp8;
- (BOOL)shouldBeTreatedAsInkEvent:(id)fp8;
- (void)willRemoveSubview:(id)fp8;
- (id)description;

@end

@interface ShadowView : NSView
{
    NSImage *image;
    NSScrollView *scrollView;
    BOOL shadowIsOnLeftSideOfSuperview;
}

+ (float)shadowWidth;
- (id)initWithFrame:(struct _NSRect)fp8;
- (void)dealloc;
- (void)drawOnLeftSideOfSuperview:(BOOL)fp8;
- (void)resizeWithOldSuperviewSize:(struct _NSSize)fp8;
- (void)hideIfAppropriate;
- (void)drawRect:(struct _NSRect)fp8;
- (id)hitTest:(struct _NSPoint)fp8;

@end

@interface VerticalSplitViewHandle : NSView <SplitHandleProtocol>
{
    MailVerticalSplitView *splitView;
    NSImage *image;
    BOOL drawShadowAtLeft;
    BOOL drawsShadowAtAll;
    NSImage *shadow;
}

- (id)initWithFrame:(struct _NSRect)fp8;
- (void)dealloc;
- (void)setSplitView:(id)fp8;
- (void)setDrawShadowAtLeft:(BOOL)fp8;
- (float)handleWidth;
- (BOOL)isOpaque;
- (void)setDrawsShadow:(BOOL)fp8;
- (void)drawRect:(struct _NSRect)fp8;
- (void)mouseDown:(id)fp8;
- (void)resetCursorRects;

@end

@interface MailboxPaneBottomView : NSView
{
    NSView *leftButton;
    NSView *rightButton;
    VerticalSplitViewHandle *splitViewHandle;
    NSImage *buttonEdge;
    NSImage *filler;
    BOOL isOnRightSide;
}

- (void)awakeFromNib;
- (void)dealloc;
- (void)swapPositionsOfSubviews;
- (BOOL)isOpaque;
- (void)drawRect:(struct _NSRect)fp8;
- (void)resizeSubviewsWithOldSize:(struct _NSSize)fp8;

@end

@interface MailPreferences : NSPreferences
{
}

- (id)init;
- (id)windowTitle;

@end

@interface EmailAliasUpdater : NSObject
{
    NSDate *_lastUpdateDate;
    NSDate *_updateStartDate;
    NSMutableArray *_updaters;
    NSMutableSet *_lastUpdateAccounts;
    BOOL _needsSave;
    NSMutableArray *_usersToBeEdited;
}

+ (id)sharedInstance;
- (id)init;
- (void)dealloc;
- (id)_updaterForAccount:(id)fp8;
- (id)_currentUpdater;
- (void)_kickOffNextUpdater;
- (id)_updateAccount:(id)fp8;
- (void)_startUpdaters;
- (void)update;
- (void)updateIfFirstTime;
- (void)aliasUpdater:(id)fp8 didFinishWithError:(id)fp12;
- (void)_accountsChanged:(id)fp8;
- (void)_openWebmailPreferencesURLForUser:(id)fp8 usingWebmailPreferencesURL:(id)fp12;
- (void)_openWebmailPreferencesURL;
- (void)_fetchWebmailPreferencesURL;
- (void)openWebmailPreferencesURLForUser:(id)fp8;

@end

@interface DocMacAliasUpdater : NSObject
{
    iToolsAccount *_account;
    ISS_DMMemberAccount *_dmAccount;
    id _delegate;
    int _state;
}

- (id)initWithIToolsAccount:(id)fp8;
- (void)dealloc;
- (void)setDelegate:(id)fp8;
- (id)delegate;
- (void)_transactionDidFinishWithError:(id)fp8;
- (void)fetchIfModifiedSince:(id)fp8;
- (id)account;
- (int)state;
- (void)transactionSuccessful:(id)fp8;
- (void)transactionHadError:(id)fp8;
- (void)transactionAborted:(id)fp8;

@end

@interface AccountCell : NSActionCell
{
    NSString *subtitle;
    MailAccount *account;
}

- (id)initTextCell:(id)fp8;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (void)setAccount:(id)fp8;
- (void)setSubtitle:(id)fp8;
- (id)subtitle;
- (id)title;
- (id)icon;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawInteriorWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawString:(id)fp8 inRect:(struct _NSRect)fp12 withAttributes:(id)fp28;

@end

@interface MailToolbar : NSToolbar
{
}

+ (id)toolbarFont;
- (BOOL)_allowsSizeMode:(int)fp8;
- (id)initWithIdentifier:(id)fp8;
- (void)setDisplayMode:(int)fp8;
- (void)_moveItemFromIndex:(int)fp8 toIndex:(int)fp12 notifyDelegate:(BOOL)fp16 notifyView:(BOOL)fp20 notifyFamilyAndUpdateDefaults:(BOOL)fp24;
- (void)_setCurrentItemsToItemIdentifiers:(id)fp8 notifyDelegate:(BOOL)fp12 notifyView:(BOOL)fp16 notifyFamilyAndUpdateDefaults:(BOOL)fp20;

@end

@interface MailToolbarButtonAccessibilitySegment : MailAccessibilitySegment
{
}

- (id)accessibilityTitleAttribute;

@end

@interface MailToolbarButtonCell : MailSegmentedCell
{
}

+ (float)maxImageHeightAllowedForControlSize:(int)fp8;
+ (const struct MailSegmentedCellMetrics *)metricsForControlSize:(int)fp8;
+ (id)menuIndicator:(int)fp8;
+ (id)leftButtonCap:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)rightButtonCap:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)buttonSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)buttonFillColorPattern:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)leftSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)rightSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (int)segmentedCellStyle;
+ (id)disabledColor;
- (id)toolbarItem;
- (void)drawImageForSegment:(int)fp8 inFrame:(struct _NSRect)fp12 withView:(id)fp28;
- (id)accessibilitySegmentAtIndex:(int)fp8;

@end

@interface MailToolbarItem : NSToolbarItem
{
    NSArray *_segments;
    unsigned int _extraSegmentWidth;
    unsigned int _extraHorizontalPadding;
    unsigned int _borderless:1;
}

- (id)initWithItemIdentifier:(id)fp8;
- (id)initWithItemIdentifier:(id)fp8 segments:(id)fp12 bordered:(BOOL)fp16 toolbar:(id)fp20;
- (void)dealloc;
- (id)segments;
- (unsigned int)segmentCount;
- (id)segmentAtIndex:(int)fp8;
- (id)itemView;
- (void)setLabel:(id)fp8 forSegment:(int)fp12;
- (id)labelForSegment:(int)fp8;
- (void)setPaletteLabel:(id)fp8 forSegment:(int)fp12;
- (id)paletteLabelForSegment:(int)fp8;
- (void)setToolTip:(id)fp8 forSegment:(int)fp12;
- (id)toolTipForSegment:(int)fp8;
- (void)setTag:(int)fp8 forSegment:(int)fp12;
- (int)tagForSegment:(int)fp8;
- (void)setTarget:(id)fp8 forSegment:(int)fp12;
- (id)targetForSegment:(int)fp8;
- (void)setTarget:(id)fp8;
- (void)setAction:(SEL)fp8 forSegment:(int)fp12;
- (SEL)actionForSegment:(int)fp8;
- (void)setEnabled:(BOOL)fp8 forSegment:(int)fp12;
- (BOOL)isEnabledForSegment:(int)fp8;
- (void)setImage:(id)fp8 forSegment:(int)fp12;
- (id)imageForSegment:(int)fp8;
- (void)setInactiveImage:(id)fp8 forSegment:(int)fp12;
- (id)inactiveImageForSegment:(int)fp8;
- (void)setPressedImage:(id)fp8 forSegment:(int)fp12;
- (id)pressedImageForSegment:(int)fp8;
- (BOOL)bordered;
- (void)setExtraSegmentWidth:(unsigned int)fp8;
- (unsigned int)extraSegmentWidth;
- (void)setExtraHorizontalPadding:(unsigned int)fp8;
- (unsigned int)extraHorizontalPadding;
- (void)performActionForSegment:(int)fp8;
- (void)_validateSegment:(int)fp8 forToolbarItem:(id)fp12;
- (void)setEnabled:(BOOL)fp8;
- (void)configureForDisplayMode:(int)fp8 andSizeMode:(int)fp12;
- (id)menuFormRepresentation;
- (void)_validateAsCustomItem:(id)fp8;
- (id)_copyOfCustomView;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (BOOL)usesMenuFormRepresentationInDisplayMode:(int)fp8;
- (BOOL)wantsToDrawIconIntoLabelAreaInDisplayMode:(int)fp8;
- (BOOL)wantsToDrawIconInDisplayMode:(int)fp8;
- (BOOL)wantsToDrawLabelInDisplayMode:(int)fp8;
- (BOOL)wantsToDrawLabelInPalette;

@end

@interface MailToolbarItemSegment : NSObject <NSCopying>
{
    NSImage *_image;
    NSImage *_inactiveImage;
    NSImage *_pressedImage;
    NSString *_label;
    NSString *_paletteLabel;
    NSString *_altLabel;
    NSString *_toolTip;
    int _tag;
    id _target;
    SEL _action;
}

- (id)initWithImage:(id)fp8 label:(id)fp12 paletteLabel:(id)fp16 altLabel:(id)fp20 tooltip:(id)fp24 tag:(int)fp28 target:(id)fp32 action:(SEL)fp36;
- (id)copyWithZone:(struct _NSZone *)fp8;
- (void)dealloc;
- (id)image;
- (void)setImage:(id)fp8;
- (void)setInactiveImage:(id)fp8;
- (id)inactiveImage;
- (void)setPressedImage:(id)fp8;
- (id)pressedImage;
- (id)label;
- (BOOL)setLabel:(id)fp8;
- (BOOL)hasCustomPaletteLabel;
- (id)paletteLabel;
- (id)altLabel;
- (void)setPaletteLabel:(id)fp8;
- (id)toolTip;
- (void)setToolTip:(id)fp8;
- (int)tag;
- (void)setTag:(int)fp8;
- (id)target;
- (void)setTarget:(id)fp8;
- (SEL)action;
- (void)setAction:(SEL)fp8;
- (id)menuFormRepresentation;

@end

@interface MailToolbarItemView : NSView
{
    MailToolbarItem *_item;
    NSSegmentedControl *_button;
    NSSegmentedControl *_label;
    int _tag;
}

+ (void)initialize;
- (id)initWithItem:(id)fp8;
- (void)dealloc;
- (id)toolbarItem;
- (BOOL)_isInPaletteView;
- (BOOL)_isInMainToolbarView;
- (void)_layoutIconAndLabelForDisplayMode:(int)fp8;
- (float)_itemHeightForDisplayMode:(int)fp8;
- (void)configureForDisplayMode:(int)fp8 andSizeMode:(int)fp12;
- (void)setLabel:(id)fp8 forSegment:(int)fp12;
- (void)setImage:(id)fp8 forSegment:(int)fp12;
- (void)setToolTip:(id)fp8 forSegment:(int)fp12;
- (void)setEnabled:(BOOL)fp8 forSegment:(int)fp12;
- (BOOL)isEnabledForSegment:(int)fp8;
- (void)_performAction:(id)fp8;
- (void)setFrameOrigin:(struct _NSPoint)fp8;
- (void)drawRect:(struct _NSRect)fp8;
- (void)viewWillMoveToWindow:(id)fp8;
- (void)viewDidMoveToWindow;
- (int)tag;
- (void)setTag:(int)fp8;

@end

@interface MailToolbarLabelAccessibilitySegment : MailAccessibilitySegment
{
}

- (BOOL)_isAccessible;
- (BOOL)accessibilityIsIgnored;
- (id)accessibilityParentAttribute;
- (id)accessibilityHitTest:(struct _NSPoint)fp8;
- (id)accessibilityFocusedUIElement;

@end

@interface MailToolbarLabelCell : MailSegmentedCell
{
    BOOL _allowedToBeFirstResponder;
}

+ (const struct MailSegmentedCellMetrics *)metricsForControlSize:(int)fp8;
+ (id)menuIndicator:(int)fp8;
+ (id)leftButtonCap:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)rightButtonCap:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)buttonSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)buttonFillColorPattern:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (int)segmentedCellStyle;
+ (float)segmentWidthForToolbarItem:(id)fp8 toolbarSize:(int)fp12;
- (void)drawBackgroundWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawLabelForSegment:(int)fp8 inFrame:(struct _NSRect)fp12 withView:(id)fp28;
- (void)setAllowedToBeFirstResponder:(BOOL)fp8;
- (BOOL)acceptsFirstResponder;
- (id)accessibilitySegmentAtIndex:(int)fp8;
- (BOOL)_allowedToBeFirstResponder;

@end

@interface MailToolbarSpaceItemWithPin : NSToolbarItem
{
    NSView *_pin;
}

+ (id)itemIdentifier;
- (id)initWithPin:(id)fp8;
- (id)initWithItemIdentifier:(id)fp8;
- (id)init;
- (void)dealloc;
- (id)menuFormRepresentation;
- (BOOL)isSeparatorItem;
- (BOOL)wantsToDrawIconInDisplayMode:(int)fp8;
- (BOOL)wantsToDrawLabelInDisplayMode:(int)fp8;
- (BOOL)wantsToDrawIconIntoLabelAreaInDisplayMode:(int)fp8;
- (BOOL)_needsRedisplayWhenBeginningToolbarEditing;
- (BOOL)_emptyContents;
- (BOOL)hasContents;
- (BOOL)allowsDuplicatesInToolbar;
- (void)_updateSizeForDisplayMode:(int)fp8;
- (void)configureForDisplayMode:(int)fp8 andSizeMode:(int)fp12;
- (void)_pinViewFrameChanged;
- (void)updateWidth;

@end

@interface MailToolbarSpace : NSView
{
    MailToolbarSpaceItemWithPin *_spaceItem;
    BOOL _inPalette;
}

- (id)initWithSize:(struct _NSSize)fp8 forSpaceItem:(id)fp16;
- (void)drawRect:(struct _NSRect)fp8;
- (void)setInPalette:(BOOL)fp8;
- (BOOL)inPalette;

@end

@interface SpotlightBar : NSView
{
    NSString *_searchString;
    NSTextField *_textField;
    NSButton *_searchButton;
}

- (void)_setupView;
- (id)initWithFrame:(struct _NSRect)fp8 searchString:(id)fp24;
- (void)dealloc;
- (void)setSearchString:(id)fp8;
- (id)_backgroundColor;
- (struct CGSize)_patternPhase;
- (void)drawRect:(struct _NSRect)fp8;
- (void)searchButtonAction:(id)fp8;

@end

@interface MailToolbarBorderlessButtonCell : MailToolbarButtonCell
{
}

+ (const struct MailSegmentedCellMetrics *)metricsForControlSize:(int)fp8;
+ (id)menuIndicator:(int)fp8;
+ (id)leftButtonCap:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)rightButtonCap:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)buttonSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)buttonFillColorPattern:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)leftSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
+ (id)rightSeparator:(int)fp8 value:(int)fp12 tint:(int)fp16 controlSize:(int)fp20;
- (void)drawBackgroundWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawImageForSegment:(int)fp8 inFrame:(struct _NSRect)fp12 withView:(id)fp28;
- (void)drawFocusRingForSegment:(int)fp8 inFrame:(struct _NSRect)fp12 withView:(id)fp28;

@end

@interface MailAccessibilitySegment : NSObject
{
    NSString *_role;
    id _parent;
    int _index;
}

+ (id)segmentWithIndex:(int)fp8 parent:(id)fp12;
- (id)accessibilityAttributeNames;
- (id)initWithIndex:(int)fp8 parent:(id)fp12;
- (void)dealloc;
- (id)segmentedCell;
- (int)index;
- (BOOL)isEqual:(id)fp8;
- (id)accessibilityRoleAttribute;
- (BOOL)accessibilityIsRoleAttributeSettable;
- (id)accessibilityRoleDescriptionAttribute;
- (BOOL)accessibilityIsRoleDescriptionAttributeSettable;
- (id)accessibilitySubroleAttribute;
- (BOOL)accessibilityIsSubroleAttributeSettable;
- (id)accessibilityHelpAttribute;
- (BOOL)accessibilityIsHelpAttributeSettable;
- (id)accessibilityFocusedAttribute;
- (BOOL)accessibilityIsFocusedAttributeSettable;
- (void)accessibilitySetFocusedAttribute:(id)fp8;
- (id)accessibilityParentAttribute;
- (BOOL)accessibilityIsParentAttributeSettable;
- (id)accessibilityWindowAttribute;
- (BOOL)accessibilityIsWindowAttributeSettable;
- (id)accessibilityTopLevelUIElementAttribute;
- (BOOL)accessibilityIsTopLevelUIElementAttributeSettable;
- (id)accessibilityPositionAttribute;
- (BOOL)accessibilityIsPositionAttributeSettable;
- (id)accessibilitySizeAttribute;
- (BOOL)accessibilityIsSizeAttributeSettable;
- (id)accessibilityAttributeValue:(id)fp8;
- (BOOL)accessibilityIsAttributeSettable:(id)fp8;
- (void)accessibilitySetValue:(id)fp8 forAttribute:(id)fp12;
- (id)accessibilityActionNames;
- (id)accessibilityActionDescription:(id)fp8;
- (void)accessibilityPerformAction:(id)fp8;
- (BOOL)accessibilityIsIgnored;
- (id)accessibilityHitTest:(struct _NSPoint)fp8;
- (id)accessibilityFocusedUIElement;
- (BOOL)accessibilityShouldUseUniqueId;
- (id)accessibilityValueAttribute;
- (BOOL)accessibilityIsValueAttributeSettable;
- (id)accessibilityTitleAttribute;
- (BOOL)accessibilityIsTitleAttributeSettable;
- (id)accessibilityEnabledAttribute;
- (BOOL)accessibilityIsEnabledAttributeSettable;
- (id)accessibilityChildrenAttribute;
- (BOOL)accessibilityIsChildrenAttributeSettable;

@end

@interface MailSegmentedCell (MailSegmentedCellAccessibility)
- (id)accessibilitySegmentAtIndex:(int)fp8;
- (struct _NSRect)_accessibilityScreenRectForSegment:(int)fp8;
- (id)accessibilityAttributeNames;
- (id)accessibilityRoleAttribute;
- (id)accessibilityChildrenAttribute;
- (BOOL)accessibilityIsChildrenAttributeSettable;
- (id)accessibilityValueAttribute;
- (id)accessibilityHitTest:(struct _NSPoint)fp8;
- (id)accessibilityFocusedUIElement;
- (id)accessibilityFocusedAttribute;
- (BOOL)accessibilityIsFocusedAttributeSettable;
- (BOOL)accessibilityIsChildFocusable:(id)fp8;
- (void)accessibilitySetFocus:(id)fp8 forChild:(id)fp12;
- (id)accessibilityPositionOfChild:(id)fp8;
- (id)accessibilitySizeOfChild:(id)fp8;
- (struct _NSRect)accessibilityFocusRingBounds;
- (id)accessibilityHelpStringForChild:(id)fp8;
@end

@interface FlatPopUpButtonCell : NSPopUpButtonCell
{
}

+ (void)loadCapGraphics;
- (struct _NSRect)titleRectForBounds:(struct _NSRect)fp8;
- (void)_drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;
- (void)drawWithFrame:(struct _NSRect)fp8 inView:(id)fp24;

@end

@interface FlatPopUpButton : NSPopUpButton
{
}

@end

@interface InvitationAttachmentOpener : TemporaryAttachmentOpener
{
    BOOL _openImmediately;
}

- (id)initWithAttachments:(id)fp8 openImmediately:(BOOL)fp12;
- (void)_saveAttachmentsToICalCaches:(id)fp8;
- (void)beginSaveOfAttachments:(id)fp8 toTemporaryFolderWithName:(id)fp12 taskName:(id)fp16;

@end

@interface NSWorkspace (MailAdditions)
+ (BOOL)isApplicationWithBundleIDRunning:(id)fp8;
@end

@interface MessageWebHTMLView : WebHTMLView
{
}

- (void)copyWithGatekeeperApproval:(id)fp8;
- (void)copy:(id)fp8;
- (id)pasteboardTypesForSelection;
- (BOOL)writeSelectionToPasteboard:(id)fp8 types:(id)fp12;

@end

@interface WebHTMLView (ToReplaceCenterWithOurOwn)
+ (id)allocWithZone:(struct _NSZone *)fp8;
@end

@interface NSEvent (NSEventAdditions)
+ (id)eventByChangingKeyEvent:(id)fp8 toCharacters:(id)fp12;
- (unsigned short)characterCodeWithCarbonModifiers:(unsigned long)fp8;
- (BOOL)isCommandEqualBelowPlusKeyDown;
- (BOOL)isCommandUnderscoreAboveMinusKeyDown;
@end

@interface TypeAheadWindow : NSWindow
{
    NSMutableArray *savedEvents;
}

- (void)sendEvent:(id)fp8;
- (void)flushTypeAheadEvents;

@end

